Window: storage event
The storage
event of the Window
interface fires when a storage area (localStorage
) has been modified in the context of another document.
Note: This won't work on the same page that is making the changes — it is really a way for other pages on the domain using the storage to sync any changes that are made. Pages on other domains can't access the same storage objects.
Syntax
Use the event name in methods like addEventListener()
, or set an event handler property.
js
addEventListener("storage", (event) => {});
onstorage = (event) => {};
Event type
A StorageEvent
. Inherits from Event
.
Event properties
key
Read only-
Returns a string that represents the key changed. The
key
attribute isnull
when the change is caused by the storageclear()
method. newValue
Read only-
Returns a string with the new value of the
key
. This value isnull
when the change has been invoked by storageclear()
method, or thekey
has been removed from the storage. oldValue
Read only-
Returns a string with the original value of the
key
. This value isnull
when thekey
has been newly added and therefore doesn't have any previous value. storageArea
Read only-
Returns a
Storage
object that represents the storage that was affected. url
Read only-
Returns string with the URL of the document whose
key
changed.
Event handler aliases
In addition to the Window
interface, the event handler property onstorage
is also available on the following targets:
Examples
Log the sampleList
item to the console when the storage
event fires:
js
window.addEventListener("storage", () => {
// When local storage changes, dump the list to
// the console.
console.log(JSON.parse(window.localStorage.getItem("sampleList")));
});
The same action can be achieved using the onstorage
event handler property:
js
window.onstorage = () => {
// When local storage changes, dump the list to
// the console.
console.log(JSON.parse(window.localStorage.getItem("sampleList")));
};
Specifications
Specification |
---|
HTML Standard # event-storage |
HTML Standard # handler-window-onstorage |
Browser compatibility
BCD tables only load in the browser