【问题标题】:Javascript detect browser close [duplicate]Javascript检测浏览器关闭[重复]
【发布时间】:2014-02-21 05:51:56
【问题描述】:

是否可以检测浏览器是否在 JavaScript 中关闭?我尝试使用:

$( window ).unload(function() {
    //Code
});

和:

window.onbeforeunload = ExecuteMyCode;
function ExecuteMyCode() {
    //Code
}

但是当我们还点击链接、按钮时,这都会执行...我只想检测浏览器关闭事件。

【问题讨论】:

  • 按钮?什么按钮?浏览器按钮?我认为您只能检测到用户何时离开您当前的页面/网站。不是在浏览器实际关闭时。你为什么要那样做?
  • 我需要它在关闭之前删除我的 cookie(并且不能为 cookie 设置时间)
  • 如果您只是将 cookie 设置为会话 cookie,那么浏览器在关闭时会自动删除这些 cookie - 您所描述的是默认行为。
  • 如果有人正在离开您的网站(因此到新网站或关闭标签/浏览器),您可以通过beforeunload 检查。比你可以删除你的cookie。
  • @putvande 你是怎么做到的?似乎没有一种明显的方法来确定用户要去哪里。只是他们要离开了……

标签: javascript jquery events browser


【解决方案1】:

你可以试试下面的代码,它会确保你的鼠标位置在关闭按钮上,然后它会进一步执行。

window.onbeforeunload = function () {

            if (event.clientY < 0) {
                // DO YOUR STUFF BEFORE CLOSING..
            }
                return "Message to display user before close.";
            }
}

【讨论】:

  • clientY 在 chrome 浏览器中未定义
猜你喜欢
  • 1970-01-01
  • 2011-09-26
  • 2012-04-20
  • 2011-01-30
  • 2018-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-02
相关资源
最近更新 更多