onbeforeunload与onunload事件异同点总结


Posted in Javascript onJune 24, 2013

1)异同点
相同点:onunload,onbeforeunload都是在刷新或关闭时调用,可以在<script>脚本中通过window.onunload来指定或者在<body>里指定。
不同点:
a)onbeforeunload在onunload之前执行 ,它还可以阻止onunload的执行。
b)onbeforeunload是正要去服务器读取新的页面时调用,此时还没开始读取;nunload则已经从服务器上读到了需要加载的新的页面,在即将替换掉当前页面时调用 。
c)onbeforeunload是可以阻止页面的更新和关闭的。但是onunload不能。
onload、onbeforeunload、onunload事件的执行顺序:
打开页面时:只执行onload
关闭页面时:先onbeforeunload,后onunload
刷新页面时:先onbeforeunload,后onunload,再onload

2)onbeforeunload、onunload事件
触发于:
a)关闭浏览器窗口
b)通过地址栏或收藏夹前往其他页面的时候
c)点击返回,前进,刷新,主页其中一个的时候
d)点击 一个前往其他页面的url连接的时候
e)调用以下任意一个事件的时候:click,document write,document open,document close,window close ,window navigate ,window NavigateAndFind,location replace,location reload,form submit.
f)当用window open打开一个页面,并把本页的window的名字传给要打开的页面的时候。
g)重新赋予location.href的值的时候。
h)通过input type=”submit”按钮提交一个具有指定action的表单的时候。
可以用在以下元素:
BODY, FRAMESET, window
浏览器支持:
IE4+/Win, Mozilla 1.7a+, Netscape 7.2+, Firefox0.9+

3)解决刷新页面时不调用onbeforeunload

4)onbeforeunload阻止页面的更新和关闭
onbeforeunload="return '是否现在离开此页面';">

Javascript 相关文章推荐
一个js拖拽的效果类和dom-drag.js浅析
Jul 17 Javascript
js控制滚动条缓慢滚动到顶部实现代码
Mar 20 Javascript
jfinal与bootstrap的登录跳转实战演习
Sep 22 Javascript
原生JS封装ajax 传json,str,excel文件上传提交表单(推荐)
Jun 21 Javascript
JavaScript  event对象整理及详细介绍
Oct 10 Javascript
关于微信上网页图片点击全屏放大效果
Dec 19 Javascript
jQuery移除或禁用html元素点击事件常用方法小结
Feb 10 Javascript
详解Angular 自定义结构指令
Jun 21 Javascript
vue环境搭建简单教程
Nov 07 Javascript
详解给Vue2路由导航钩子和axios拦截器做个封装
Apr 10 Javascript
Vue.js 时间转换代码及时间戳转时间字符串
Oct 16 Javascript
在vue中使用console.log无效的解决
Aug 09 Javascript
控制页面按钮在后台执行期间不重复提交的JS方法
Jun 24 #Javascript
javascript动态添加样式(行内式/嵌入式/外链式等规则)
Jun 24 #Javascript
JS实现的省份级联实例代码
Jun 24 #Javascript
javascript中的绑定与解绑函数应用示例
Jun 24 #Javascript
用jquery生成二级菜单的实例代码
Jun 24 #Javascript
自动刷新网页,自动刷新当前页面,JS调用
Jun 24 #Javascript
jquery中的事件处理详细介绍
Jun 24 #Javascript
You might like
DOMXML函数笔记
2006/10/09 PHP
jquery实现心算练习代码
2010/12/06 Javascript
js修改地址栏URL参数解决url参数问题
2012/12/15 Javascript
jQuery弹出层始终垂直居中相对于屏幕或当前窗口
2013/04/01 Javascript
jquery选择器排除某个DOM元素的方法(实例演示)
2014/04/25 Javascript
JS中BOM相关知识点总结(必看篇)
2016/11/22 Javascript
正则 js分转元带千分符号详解
2017/03/08 Javascript
深入学习nodejs中的async模块的使用方法
2017/07/12 NodeJs
深入理解Vue官方文档梳理之全局API
2017/11/22 Javascript
微信小程序分包加载代码实现方法详解
2019/09/23 Javascript
laydate只显示时分 不显示秒的功能实现方法
2019/09/28 Javascript
vue改变循环遍历后的数据实例
2019/11/07 Javascript
JavaScript组合模式---引入案例分析
2020/05/23 Javascript
简单了解常用的JavaScript 库
2020/07/16 Javascript
解决Vue的文本编辑器 vue-quill-editor 小图标样式排布错乱问题
2020/08/03 Javascript
[08:54]DOTA2-DPC中国联赛 正赛 Aster vs LBZS 选手采访
2021/03/11 DOTA
Python代码调试的几种方法总结
2015/04/15 Python
Python的装饰器模式与面向切面编程详解
2015/06/21 Python
Python中文分词实现方法(安装pymmseg)
2016/06/14 Python
Pycharm学习教程(4) Python解释器的相关配置
2017/05/03 Python
python 读取目录下csv文件并绘制曲线v111的方法
2018/07/06 Python
python 文件转成16进制数组的实例
2018/07/09 Python
python进阶之自定义可迭代的类
2019/08/20 Python
Python SELENIUM上传文件或图片实现过程
2019/10/28 Python
python实现横向拼接图片
2020/03/23 Python
实现ECharts双Y轴左右刻度线一致的例子
2020/05/16 Python
Python配置pip国内镜像源的实现
2020/08/20 Python
如何将anaconda安装配置的mmdetection环境离线拷贝到另一台电脑
2020/10/15 Python
英国手工布艺沙发在线购买:Sofas & Stuff
2018/03/02 全球购物
英国简约舒适女装品牌:Great Plains
2018/07/27 全球购物
总监职责范文
2013/11/09 职场文书
代理班主任的自我评价
2014/02/04 职场文书
2014迎国庆标语大全
2014/09/19 职场文书
党支部群众路线整改措施思想汇报
2014/10/10 职场文书
python 如何将两个实数矩阵合并为一个复数矩阵
2021/05/19 Python
你真的会用Mysql的explain吗
2022/03/31 MySQL