JavaScript onbeforeunload 监听页面关闭事件

JavaScript 大约 694 字

方法一

window.onbeforeunload = function (e) {
    e = e || window.event;

    // 兼容IE8和Firefox 4之前的版本
    if (e) {
        e.returnValue = '关闭提示';
    }

    // Chrome, Safari, Firefox 4+, Opera 12+ , IE 9+
    return '关闭提示';
};

方法二

不是所有浏览器都兼容此方法,具体兼容性可见参考链接中的详情。

window.addEventListener('beforeunload', (event) => {
    // 取消默认事件处理方式
    event.preventDefault();
    // Chrome 需要设置 returnValue
    event.returnValue = '';
});

备注

提示文字并不是设置的returnValue的内容,因为浏览器对提示信息做了统一处理,自定义提示内容只在低版本浏览器起作用。

onbeforeunload事件中无法打开弹窗或新窗口,更不用说自定义对话框等。

参考

https://developer.mozilla.org/zh-CN/docs/Web/API/WindowEventHandlers/onbeforeunload

https://developer.mozilla.org/zh-CN/docs/Web/API/Window/beforeunload_event

阅读 27 · 发布于 2021-06-09

————        END        ————

扫描下方二维码关注公众号和小程序↓↓↓

扫描二维码关注我
昵称:
随便看看 换一批