событие storage
Привет.
Почему не срабатывает код window.addEventListener('storage', storageEventHandler(e), false); function storageEventHandler(e){ alert("storage event called key: " + e.key ); } //sessionStorage.setItem("someKey", "someValue"); sessionStorage['name1']='holi'; |
потому что скобки вызвают функцию, и в addEventListener передаётся результат её выполнения - undefined.
window.addEventListener('storage', *!*storageEventHandler(e)*/!*, false); function storageEventHandler(e){ alert("storage event called key: " + e.key ); } //sessionStorage.setItem("someKey", "someValue"); sessionStorage['name1']='holi'; |
window.addEventListener('storage', storageEventHandler, false); function storageEventHandler(){ alert("storage event called key: " ); } sessionStorage.setItem("someKey", "someValue"); sessionStorage['name1']='holi'; Не срабатывает |
|
По моему onstorage работает только при изменении дочернего окна./фрейма а на изменение на своей странице не реагирует
http://all-html5.narod.ru/2/vrem1.htm |
ах*****ьная новость.И что теперь делать?Мне нужно сообщение с выводом что такае-то значение сменилось на ...
|
Я точно не знаю-проверь ее во первых-но по примеру моему так получается
|
пожалуйста пример.:) iMaxmaxmaximus
Дай урок :) |
Чтото наподобии вот такого
function setStorage(a,v) {sessionStorage[a]=v;storageEventHandler(a)}; function storageEventHandler(a){ alert("storage event called key: " )+a;} setStorage("someKey", "someValue"); |
Цитата:
bot87, в чем сложность сделать обертку? function sessStorage( key, value ) { var currentValue = sessionStorage.getItem( key ); if ( typeof value !== "undefined" && currentValue !== value ) { sessionStorage.setItem( key, value ); if ( !( window.eval && eval("/*@cc_on 1;@*/") ) ) { var e = document.createEvent( 'StorageEvent' ); e.initStorageEvent( 'storage', false, false, key, currentValue, value, location.href, window.sessionStorage ); window.dispatchEvent( e ); } currentValue = value; } return currentValue; } if ( "addEventListener" in window ) { window.addEventListener('storage', storageEventHandler, false); } else { document.attachEvent('onstorage', storageEventHandler ); } function storageEventHandler(e){ alert("storage event called key: " + e.key ); } sessStorage("name1", "holi122"); Цитата:
|
Часовой пояс GMT +3, время: 17:20. |