我正在使用sessionStorage
来确保每个会话只执行一次操作。但是,如果用户打开一个新窗口 - sessionStorage
不会转移到新窗口,并再次执行该操作。请参阅下面的代码:
if sessionStorage.alreadyTracked != "1"
sessionStorage.alreadyTracked = "1"
...
是否有一种适用于所有标签的简单方法?也许我需要使用cookie?
答案 0 :(得分:3)
就html5存储而言,我会选择localStorage。
见下文的差异。
会话存储:
本地存储:
答案 1 :(得分:1)
您可能希望切换为localStorage
,因为sessionStorage
绑定到各个标签,而localStorage
则没有。{/ p>
答案 2 :(得分:0)
如果您只定位FF / Chrome,那么您可能还需要查看Broadcast Channel API
广播频道API允许在具有相同来源的浏览上下文(即窗口,制表符,框架或iframe)之间进行简单通信(通常是来自同一网站的页面)。