Не работают события локальных хранилищ
Всем привет.У меня возникла проблема,что событие (window.onStorage) не вызывается при изменении в localStorage либо sessionStorage.
Также пытался задать обработчик событию (storage),через метод (window.addEventListener(); ),но он тоже не работает.В интернете три колеки. Вот исходник:
<script>
function handlerr(){
alert("Событие");
}
window.addEventListener("storage", handlerr, false);
function ch(){
localStorage["name"]="v";
localStorage.setItem("n","v");
}
</script>
Вызывая метод (ch()) происходят изменения в хранилище,но событие не вызывается. |
Цитата:
https://professorweb.ru/my/html/html5/level5/5_2.php |
Цитата:
|
Цитата:
|
Цитата:
нужно событие там где изменяют , добавьте тригер в
function ch(){
localStorage["name"]="v";
localStorage.setItem("n","v");
alert("ура событие")
}
|
Цитата:
|
Цитата:
Цитата:
Я наверное чегото недопонимаю.Я написал два документа,они вызывались локально и у них были общие локальные данные.Я запустил оба(пытался по отдельности,через ссылки <a>)документа.В первом я добавлял локальные значения хранилища,во втором назначил обработчик события хранилища.Начинаю изменять значения в первом,а во втором ничего не происходит.Таки может я не так чтото делаю? Вот оба исходника: -1.
<!DOCTYPE html>
<html>
<head>
<script>
function ch(){
localStorage.setItem("nave","value");
}
</script>
</head>
<body>
<button onclick="ch();">Изменить</button>
<a href="new1.html" target="_blank">ссылка</a>
</body>
</html>
-2.
<!DOCTYPE html>
<html>
<head>
<script>
function h(){
var s=document.getElementById("s");
var li=document.createElement("li");
li.innerHTML="ASD";
s.appendChild(li);
}
window.addEventListener("storage",h,false);
</script>
</head>
<body>
<ul id="s"></ul>
</body>
</html>
|
Цитата:
|
DGGDAK47,
или так в проверке
localStorage.setItem("nave", Math.random());
|
Цитата:
Последний вопрос-а где можно применить эти события? |
Цитата:
|
| Часовой пояс GMT +3, время: 02:34. |