Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 关闭所有选项卡时删除/清除本地存储_Javascript_Browser_Local Storage - Fatal编程技术网

Javascript 关闭所有选项卡时删除/清除本地存储

Javascript 关闭所有选项卡时删除/清除本地存储,javascript,browser,local-storage,Javascript,Browser,Local Storage,我必须清除本地存储当我的网站从所有标签关闭或浏览器窗口被关闭,点击关闭按钮或任何快捷键,我有谷歌为它从2-3天,但没有得到任何成功。您有什么方法可以实现这一点吗?您可以使用正文中的onunload事件来触发本地存储清除: 但是有一点需要注意,IE、Firefox和Safari都支持onunload事件,但是在Chrome或Opera中还没有得到正确的支持。您必须使用鲜为人知的小兄弟会话存储,而不是localStorage。它完全执行您想要的操作—存储数据直到会话结束 。重新加载几次以查看计数器

我必须清除本地存储当我的网站从所有标签关闭或浏览器窗口被关闭,点击关闭按钮或任何快捷键,我有谷歌为它从2-3天,但没有得到任何成功。您有什么方法可以实现这一点吗?

您可以使用
正文中的
onunload
事件来触发本地存储清除:


但是有一点需要注意,IE、Firefox和Safari都支持
onunload
事件,但是在Chrome或Opera中还没有得到正确的支持。

您必须使用鲜为人知的小兄弟
会话存储,而不是
localStorage
。它完全执行您想要的操作—存储数据直到会话结束

。重新加载几次以查看计数器增量。关闭窗口后,计数器将重置。

您可以使用 会话存储:如果要在其他选项卡中处理。 本地存储:仅在当前选项卡中

window.onbeforeunload = function(){
       window.localStorage.clear();
       window.sessionStorage.clear();
}

希望能有所帮助。

在“卸载”事件期间清除存储。您从哪里得到信息,chrome不支持
unload
事件?请仔细阅读-“正确”,这意味着chrome的旧版本有问题,也有hi@bodi0和christoph,但如果用户按ctrl+f5或刷新按钮,我希望本地存储保持不变,如果有两个选项卡打开了我的网站,有些选项卡只关闭了一个选项卡,那么本地存储也会保持不变,当所有选项卡都从浏览器关闭时,只有我需要删除本地存储。您必须将此与跨选项卡消息相结合:@ArtjomB。不需要复杂的消息传递,sessionStorage就可以了。在卸载事件中清除sessionStorage会中断功能,因为正常刷新也会触发此事件。与onbeforeunload事件相同吗?感谢您提供有关“卸载”中断的信息。非常有用。没有解释的代码是没有帮助的。在这里,您必须至少解释在什么情况下应该调用此代码。此外,您拥有的代码实际上并没有清除存储器:它只从存储器中删除一个密钥。在您开始编辑之前,我要补充一点,如果您以这样一种方式编辑它,它会呈现一个已经呈现的解决方案,那么您应该删除它。不欢迎重复的解决方案。
window.localStorage.removeItem(key);