存储事件未触发

新手上路,请多包涵

附上活动:

 $(window).on("storage", function (e) {
   //callback not getting hit
});

试图触发事件:

 localStorage.setItem("test", "123");

我打开了两个选项卡,都在监听存储事件。我可以在两个选项卡上看到 localStorage 得到正确更新。但是,当我在一个选项卡上更改 localStorage 时,另一个选项卡永远不会触发该事件。有任何想法吗?

在 Chrome/Firefox 上试过。域格式为 https://www.xxx.yyy.zzz

原文由 MichaelAttard 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 583
2 个回答

StorageEvent 在具有相同域的不同页面中触发。

来自 MDN

只要对 Storage 对象进行更改,就会触发 StorageEvent。

这在进行更改的同一页面上不起作用——这实际上是域中其他页面使用存储同步所做的任何更改的一种方式。

原文由 Perry2008084 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题