问题点:localStorage的值正常情况下是同一个域下是共享的,比如你打开两个同域下的页面,不管两个页面是不是独立一个窗口,他们localStorage的值都应该是共享的,一个改变,另一个也会发生改变。

例如:

打开两个相同的地址A,B, 然后在A,B网页的控制台分别执行下面代码:

localStorage在IE11下,两个窗口值不同步问题

 

期望的结果应该是打印出来的时间戳应该是不断变化的,

测试谷歌,火狐完全没问题,一如往昔。

接下来测试一下IE11,发现一直打印同一个值。这就值得思考了。

是否不支持,经过查看兼容性,以及能够打印第一个值,那说明这个可能性可以排除。

划重点:解决方案是在获取值的时候先设置一下localStorage.setItem这个方法,你可以随便设置一个值,例如:

localStorage.setItem("null_item",null);

localStorage.getItem("time");

这样在IE11也可以获取到最新值了。

 

相关文章:

  • 2022-02-25
  • 2022-12-23
  • 2021-06-04
  • 2022-12-23
  • 2021-08-30
  • 2021-05-11
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-07-31
  • 2021-10-04
  • 2021-07-16
  • 2022-12-23
  • 2021-05-02
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案