经过反复测试,只能找到以下方法勉强判断用户离开当前窗口,当然不完善,这个问题没办法解决
window.οnunlοad=function()
{
//alert(event.clientX+" -"+document.body.clientWidth+"-"+event.clientY);
if((event.clientX<0&&event.clientY<0)||(event.clientX>document.body.clientWidth&&event.clientY>90)||event.altKey||event.ctrlKey)
{
alert("close");
}
}
1.浏览器不是软件的窗口,要该事件非常困难,因为关闭与刷新这两个事件就很难区分。
2.都没有对应的事件,只能根据一些条件来判断,但未必准确。
3.前进、后退、刷新、关闭都响应事件window.onbeforeunload。
4.javascript之所以能得到某些事件属性和调用方法,是因为浏览器对象为他提供了接口,用COM的术语来说,是IDispatch接口,如果浏览器对象没有为他提供接口,他什么也干不了。所以有些功能在其它语言中可以实现,而在javascript中是永远无法实现的。
用onUnload方法
在body 标签里加入onUnload事件
body onUnload="myClose()"
然后在javascript里定义myClose()方法,但是onUnload方法是在关闭窗口之后执行,不是在关闭窗口之前执行,如果你想在关闭窗口之前做判断,请用第一种方法