onunload和onbeforeunload方法的区别

共同点:onunload,onbeforeunload都是在刷新或关闭时调用,可以在<script>脚本中通过 window.onunload来调用。

区别:onbeforeunload 是正要去服务器读取新的页面时调用,此时还没开始读取;

而onunload则已经从服务器上读到了需要加载的新的页面,在即将替换掉当前页面时调用。

1、onunload事件

    浏览器兼容情况

     IE6,IE7,IE8 中 刷新页面、关闭浏览器之后、页面跳转之后都会执行;

     IE9 刷新页面 会执行,页面跳转、关闭浏览器不能执行;

     firefox(包括firefox3.6) 关闭标签之后、页面跳转之后、刷新页面之后能执行,但关闭浏览器不能执行;

    Safari 刷新页面、页面跳转之后会执行,但关闭浏览器不能执行;

     Opera、Chrome 任何情况都不执行。

2、onbeforeunload事件

     浏览器兼容情况

      IE6,IE7 使用 onbeforeunload 遇到的bug

     凡是 <a> 标签 都会触发 onbeforeunload事件 包括 href=”javascript:void(0)” 这种。

     在IE6,IE7 下面 点击 里面的 a 标签,就会触发。

     解决方法:给这 a标签的父级添加 οnclick=function(){return false} 即可,不过添加了这个之后 要确保 父级里面没有 input type=”checkbox” 的标签,

     否则会导致其无效不可点击。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值