怎样检测用户关闭浏览器,并且弹出对话框确认是否关闭|?

pploveshao 2004-03-29 03:47:48
抛砖引玉
function onBeforeWindowUnload() {
var iX = window.document.body.offsetWidth - window.event.clientX ;
var iY = window.event.clientY ;

if (iX <= 30 && iY < 0 ) {
//alert("haha");
return false;
}
}

//绑定回调事件处理函数
window.onbeforeunload = onBeforeWindowUnload;

但问题是,如果是一个框架叶面,刷新了其中某个框架的内容后,这个方法就失效了!
...全文
73 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
pploveshao 2004-03-29
  • 打赏
  • 举报
回复
to meizz!
it didn't work on my computer!

你的思路和我的一样,希望有不同做法的兄弟不佞赐教。
meizz 2004-03-29
  • 打赏
  • 举报
回复
系统没有针对关闭的事件: onunload onbeforeunload 在刷新的时候同样会被触发, 所以只能判断关闭时的一些特殊现象来判断用户是刷新还是关闭:
<script language=javascript>
window.onbeforeunload = function()
{
if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey)
{
window.event.returnValue = "";
}
}
</script>
pploveshao 2004-03-29
  • 打赏
  • 举报
回复
在一个基于浏览器的应用系统中,用户很可能因为一时的疏忽关闭了主窗口。所以提供一种确认关闭的机制很必要的,我已经把我的做法贴了出来,希望大家都可以把各自的做法拿出来,大家比较一下,找出最好的方法。

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧