您好,匿名用户
随意问技术百科期待您的加入

chrome onbeforeunload 判断是刷新 还是关闭

0 投票

在谷歌浏览器中要怎么区分页面是刷新还是关闭事件

用户头像 提问 2014年 3月30日 @ Nami 列兵 (71 威望)
分享到:

1个回答

0 投票
 
最佳答案

onbeforeunload 事件是非 W3C DOM-Event 标准事件,它属于 BOM (Browser Object Model) 范畴。到现在为止 BOM 还没有被标准化,它由各个浏览器厂商制定,因此会有实现差异。

时至今日,HTML5 规范草案中已经开始标准化 BOM,遗憾的是 onbeforeunload 事件的触发条件还没有在草案中作出详细说明。

根据 MSDN 中描述,IE 的 onbeforeunload 事件可由以下这些条件触发:

  • 关闭当前浏览器窗口。
  • 导航到另一个进入一个新的地址或选择一个喜欢的位置。
  • 单击后退,前进,刷新,或主页按钮。
  • 点击一个链接到新页面。
  • 调用 超链接的 click 方法。
  • 调用 document.write 方法。
  • 调用 document.open 方法。
  • 调用 document.close 方法。
  • 调用 window.close 方法。
  • 调用 window.open 方法,窗口名称设置值为 _self。
  • 调用 window.navigate 或 NavigateAndFind 方法。
  • 调用 location.replace 方法。
  • 调用 location.reload 方法。
  • 指定一个 location.href 属性的新值。
  • 使用 submit 按键提交表单,或调用 form.submit 方法。

Chrome Safari 在调用 document.write、document.open、document.close 方法以及 "javascipt:" 伪协议时,不会触发 onbeforeunload 事件。

具体各浏览器情况,查阅:http://w3help.org/zh-cn/causes/BX2047

用户头像 回复 2014年 3月30日 @ Warwick 上等兵 (286 威望)
选中 2013年 9月7日 @Nami
提一个问题:

相关问题

+1 投票
1 回复 1,413 阅读
+1 投票
0 回复 37 阅读
0 投票
1 回复 45 阅读
0 投票
1 回复 69 阅读
用户头像 提问 2014年 1月5日 @ Jayce 上等兵 (271 威望)
0 投票
0 回复 1 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...