【问题标题】:Check if beforeunload is caused by closed tab/window or refresh检查 beforeunload 是否是由关闭的选项卡/窗口或刷新引起的
【发布时间】:2016-07-05 14:40:44
【问题描述】:

我试图绕过 chromes "Continue from where you left off" session cookie issue,其中 cookie 在关闭浏览器窗口/选项卡后不会被破坏。

为此,我在窗口中添加了一个beforeunload 侦听器,它会触发一个删除cookie 的函数:

window.addEventListener('beforeunload', destroySession)

但是,当我刷新页面或单击浏览器中的“返回”按钮时,这也会破坏 cookie,因此我需要在我的 destroySession 函数中进行子顺序检查,以查看导致 beforeunload 发生的原因。

【问题讨论】:

    标签: javascript events cookies browser window


    【解决方案1】:

    简短的回答是 - 你不能。

    长答案是 - 您可以设置一种复杂的方式来“检测”刷新与在干净的选项卡或窗口中打开但是(总是有一个但是)注释并不完美,每种方法都有它自己的一组问题(我强烈不建议使用它们):Check if page gets reloaded or refreshed in Javascript

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-24
      • 1970-01-01
      • 2011-09-10
      • 1970-01-01
      • 2012-12-08
      相关资源
      最近更新 更多