onbeforeunload 是window的一个变乱,今朝Firefox,IE都支持,首要用来提醒用户是否真的要分开该页面,凡是在一些较量重要的数据提交之前,防备用户误操纵导致数据丢失。典范的应用如gmail中,在写邮件的时辰,假如革新页面可能封锁页面,会呈现提醒。
可是在IE下点击一些a标签时,也会触发onbeforeunload变乱。而且href中写javascript:void(0)也不可,而在Firefox中不会呈现相同的环境。于是查资料对onbeforeunload变乱从头熟悉了一下:
a标签触发变乱的次序 onclick、onbeforeunload跟href三者之间的先后运行相关是这样的:onclick > onbeforeunload > href,知道了这个原理,我们就可以通过一些要领阻止onbeforeunload。其它在IE赏识器中,若是href为#,那么也不会触发onbeforeunload变乱。
怎么阻止onbeforeunload 在Ajax的同时,给a标签加上onclick变乱,这样onclick在onbeforeunload之前运行,然其后个return false,就可以啦~
绕过onbeforeunload直接href 团结onclick变乱,我们可以绕过onbeforeunload直接href,下面的代码就可以绕过onbeforeunload而执行href:
var a=1; window.onbeforeunload=function() { if(a)alert("onbeforeunload变乱发作了!"); } 只要我们在onclick变乱加上一个a=0;就可以了~
实例 此处行使了window.onbeforeunload对onclick、onbeforeunload和href举办的测试,请在IE下举办测试:
测试# | 测试毗连 | 测试Click在onbeforeunload之前 | 测试onbeforeunload在href之前 | 避开onbeforeunload直接href (编辑:河北网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|