js在onbeforeunload判断是刷新还是关闭代码
现在测试第一个是可以的,刷新的时候是false,关闭的时候是true。win7 ie9测试。 但问题是在win8 ie10上面各种都不行,无论是刷新还是关闭,无论是第一个还是第二个,全是true。
刷新一般都是按F5,不如直接监听F5按下,至于少数奇葩的刷新方式,当关闭处理得了,反正不可能100%准确判断
window.onbeforeunload=function(){ alert(event.clientX>document.body.clientWidth); alert(event.clientY);//唯独这句两处不一样,本机win7 ie9刷新是正数,关闭是负数; //虚拟机win8 ie10刷新关闭都是负数,所以就总是true alert(event.altKey); alert(event.clientX>document.body.clientWidth||event.clientY<0||event.altKey) }
刷新和关闭都可以用鼠标点,根本没法检测。
|