JavaScript 刷新或关闭网页时弹窗确认

beforeunload事件在当页面关闭或刷新时调用,事件触发的时候弹出一个有确定和取消的对话框,确定则离开页面,取消则继续待在本页。

有两种方法绑定事件,三种方法实现弹窗:

  • 通过 window.addEventListenerreturnValue 赋值
window.addEventListener("beforeunload", function (e) {
    (e || window.event).returnValue = '确定离开此页吗?';
    //注意:这里return方法是不起作用的
});
  • 通过 window.onXXXEventreturnValue 赋值
window.onbeforeunload = function(e) {
    (e || window.event).returnValue = '确定离开此页吗?';
}
  • 通过 window.onXXXEvent 直接返回提示信息
window.onbeforeunload = function(e) {
    return '确定离开此页吗?'; 
}

IE Edge 对上述方法的支持最好,IE 会显示出自定义的字符串;而 Chrome 和 Firefox 则只会显示默认的提示对话框。

建议使用 window.onXXXEvent 绑定方法,因为该方法在 Chrome 和 Firefox 中无论是刷新还是关闭都会弹窗;而 window.addEventListener 这种绑定方式在关闭选项卡的时候是不提示的!

猜你喜欢

转载自blog.csdn.net/chy555chy/article/details/80065650