首页 >web前端 >js教程 >如何在 JavaScript 中可靠地检测浏览器关闭事件?

如何在 JavaScript 中可靠地检测浏览器关闭事件?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-12-03 04:05:09842浏览

How Can I Reliably Detect Browser Close Events in JavaScript?

如何有效处理浏览器关闭事件

检测浏览器关闭事件可能具有挑战性,尤其是像 jQuery 的 onbeforeunload 和 onunload 这样的方法并不总是可用可靠的。本文提供了一种有效检测窗口 close、unload 或 beforeunload 事件的解决方案。

解决方案:

以下 JavaScript 代码可用于检测浏览器关闭事件:

window.onbeforeunload = function (event) {
    var message = 'Important: Please click on \'Save\' button to leave this page.';
    if (typeof event == 'undefined') {
        event = window.event;
    }
    if (event) {
        event.returnValue = message;
    }
    return message;
};

$(function () {
    $("a").not('#lnkLogOut').click(function () {
        window.onbeforeunload = null;
    });
    $(".btn").click(function () {
        window.onbeforeunload = null;
});
});

可选实现:

代码中的第二个函数是可选的。它可以防止在单击特定元素(例如 #lnkLogOut 和 .btn)时显示提示。

注意:

重要的是要注意自定义提示可能不会在 Firefox 中工作。请参阅[此主题](链接到主题)了解更多信息。

以上是如何在 JavaScript 中可靠地检测浏览器关闭事件?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn