我尝试按照Safari Developer Site 上的示例进行操作。
文档建议添加一个事件监听器,如下所示:
window.addEventListener('storage', storage_handler, false);
然后像这样设置你的处理函数:
function storage_handler(evt)
{
alert('The modified key was '+evt.key);
alert('The original value was '+evt.oldValue);
alert('The new value is '+evt.newValue);
alert('The URL of the page that made the change was '+evt.url);
alert('The window where the change was made was '+evt.source);
}
但我似乎无法让这段代码在我的机器(OS X 10.6、Safari 5.01)上运行,也无法在我的 iPhone 3GS(iOS 4.02)上的 Safari 上运行。
本文提供了一种单独的方法:
window.onload = function() {
...
document.body.setAttribute("onstorage", "handleOnStorage();");
}
function handleOnStorage() {
if (window.event && window.event.key.indexOf("index::") == 0){
$("stats").innerHTML = "";
displayStats();
}
}
但我也没有运气。
难道我做错了什么?这是一个错误吗?