JavaScript-如何检测浏览器的关闭动作?

小组事务管理 小组事务管理 主题:974 回复:1955

JavaScript-如何检测浏览器的关闭动作?

夜无邪 发布于 2017-05-31 字数 168 浏览 992 回复 2

希望在用户关闭浏览器时出现一些提示信息,如何来做呢?
使用window.onbeforeunload = function() {}这种方式好像只在IE下可用,有没有兼容各种主流浏览器的解决方案?

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(2

泛泛之交 2017-09-04 2 楼

可以兼容的,ie、firefox都可以

window.onbeforeunload=function(e){
var evt = e ? e : (window.event ? window.event : null); //firefox兼容
evt.returnValue='确定离开?';
}

晚风撩人 2017-08-11 1 楼

onbeforeunload()事件能够在IE、FireFox下测试通过,以下是测试代码:

<script>
window.onbeforeunload = function(e){
e = e || window.event;
return '您确认要离开此页面吗';
}
</script>

另外说说onbeforeunload和Onunload的区别:

一、在页面关闭时:

Onunload,onbeforeunload,它们都是在刷新或关闭时调用,可以在<script>脚本中通过 window.onunload来指定或者在<body>里指定。区别在于onbeforeunload在onunload之前执行,它还可 以阻止onunload的执行。

二、在页面刷新的情况下:

  Onbeforeunload也是在页面刷新或关闭时调用,Onbeforeunload是正要去服务器读 取新的页面时调用,此时还没开始读取;而onunload则已经从服务器上读到了需要加载的新的页面,在即将替换掉当前页面时调用。Onunload是无 法阻止页面的更新和关闭的。而 Onbeforeunload 可以做到。