Окно: событие storage
Базовая Широко поддерживается
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Событие storage интерфейса Window срабатывает при изменении области хранилища (localStorage или sessionStorage) в контексте другого документа.
Это событие не отменяется и не распространяется.
Примечание: Это не будет работать в том же контексте просмотра, который вносит изменения — это действительно способ для других контекстов просмотра на домене, использующем хранилище, синхронизировать любые внесённые изменения. Контексты просмотра на других доменах не могут получить доступ к тем же объектам хранилища.
Синтаксис
Используйте имя события в методах, таких как addEventListener(), или задайте свойство обработчика события.
addEventListener("storage", (event) => {});
onstorage = (event) => {};
Тип события
Объект StorageEvent. Наследуется от Event.
Свойства события
-
keyТолько чтение -
Возвращает строку с ключом для элемента хранилища, который был изменён. Свойство
keyравноnull, когда изменение вызвано методомclear()хранилища. -
newValueТолько чтение -
Возвращает строку с новым значением элемента хранилища, который был изменён. Это значение равно
nullпри вызове методаclear()хранилища или при удалении элемента из хранилища. -
oldValueТолько чтение -
Возвращает строку с исходным значением элемента хранилища, который был изменён. Это значение равно
null, если элемент хранилища был только что добавлен и, следовательно, не имеет предыдущего значения. -
storageAreaТолько чтение -
Возвращает объект
Storage, представляющий объект хранилища, который был затронут. -
urlТолько чтение -
Возвращает строку с URL документа, хранилище которого изменилось.
Псевдонимы обработчиков событий
Помимо интерфейса Window, свойство обработчика событий onstorage также доступно для следующих целей:
Примеры
Вывести элемент sampleList в консоль, когда срабатывает событие storage.
window.addEventListener("storage", () => {
// When local storage changes, dump the list to
// the console.
console.log(JSON.parse(window.localStorage.getItem("sampleList")));
});
Того же результата можно достичь, используя свойство обработчика событий onstorage:
window.onstorage = () => {
// When local storage changes, dump the list to
// the console.
console.log(JSON.parse(window.localStorage.getItem("sampleList")));
};
Спецификации
| Спецификация |
|---|
| HTML # event-storage |
| HTML # handler-window-onstorage |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
storage_event |
1 | 15 | 45 | 15 | 4 | 18 | 45 | 14 | 4 | 1.0 | ≤37 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Window/storage_event