在我们的日常生活中,时常遇到这么一种情况,当我们在点击一个链接、关闭页面、表单提交时等情况,会提示我们是否确认该操作等信息。

这里就给大家讲讲javascript的onbeforeunload()和onunload()两个事件。

相同点:

两者都是在对页面的关闭或刷新事件作个操作。

不同点:

unbeforeunload()事件执行的顺序在onunload()事件之前发生。(因为,unbeforeunload()是在页面刷新之前触发的事件,而onubload()是在页面关闭之后才会触发的)。

unbeforeunload()事件可以禁止onunload()事件的触发。

onunload()事件是无法阻止页面关闭的。

浏览器的兼容

onunload:

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

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

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

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

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

onbeforeunload:

IE、Chrome、Safari 完美支持

Firefox 不支持文字提醒信息

Opera 不支持

IE6,IE7会出现bug

示例代码:

onbeforeunload():

方式一:html元素中添加

该实例演示了如何向 body 元素添加 "onbeforeunload" 事件。

关闭当前窗口,按下 F5 或点击以下链接触发 onbeforeunload 事件。

博客地址

function myFunction() {

return "自定义内容";

}

方式二:javascript中添加

菜鸟教程(runoob.com)

该实例演示了如何使用 HTML DOM 向 body 元素添加 "onbeforeunload" 事件。

关闭当前窗口,按下 F5 或点击以下链接触发 onbeforeunload 事件。

点击调整到菜鸟教程

window.onbeforeunload = function(event) {

event.returnValue = "我在这写点东西...";

};

方式三:添加addEventListener()事件(不过此方法IE8以下不支持)

该实例演示了如何使用 addEventListener() 方法向 body 元素添加 "onbeforeunload" 事件。

关闭当前窗口,按下 F5 或点击以下链接触发 onbeforeunload 事件。

跳转地址

window.addEventListener("beforeunload", function(event) {

event.returnValue = "我在这写点东西...";

});

onunload():

方式一:html元素中添加

function fun() {

// dosomethings

}

方式二:javascript添加

window.onunload = function() {

// dosomethings

};

jquery监听html状态,jquery监听页面刷新相关推荐

  1. android 充电监听,Android_Android判断和监听底座状态和类型的方法介绍,底座的状态跟充电状态类似, - phpStudy...

    Android判断和监听底座状态和类型的方法介绍 底座的状态跟充电状态类似,很多底座提供充电功能(座充). 底座状态同样使用sticky Intent广播.可以查询设备是否插入底座,哪种底座. 判断当 ...

  2. android 2.1 监听电话状态并自动接听来电

    一.开发环境       Elispse5.5,JDK1.6,Aadroid 2.1 二.开发中使用到的重点技术点:       距离感应(SENSOR_SERVICE ),音讯管理(AUDIO_SE ...

  3. 网络安全netstat监听网络状态。

    网络安全netstat监听网络状态. Internet的通用语言是TCP/TP,它是一组协议,它规定在网络的第四层运输层有两种协议TCP.UDP.端口就是这两个协议打开的,端口分为源端口和目的端口,源 ...

  4. Android实时监听网络状态

    Android开发实时监听网络状态变化一般有两种方法: 1. 新建一个基类BasicActivity.class,在基类中注册网络监听广播NetworkChangeReceiver.class,所有页 ...

  5. oracle判断侦听状态,oracle 监听状态为BLOCKED

    静态监听的状态是UNKNOWN.当数据库状态是OPEN时,动态监听是READY:当数据库状态是NOMOUNT时,动态监听状态是BLOCKED. LSNRCTL> status Connectin ...

  6. oralce 数据库监听日志状态及目录:查看监听(使用grid用户登陆):

    数据库监听日志状态及目录:查看监听(使用grid用户登陆): su - grid 密码:grid [grid@db1 ~]$ lsnrctl LSNRCTL> status LSNRCTL> ...

  7. 初识广播机制(监听网络状态的改变,监听网络是否可以使用)

    Android系统中的广播机制比较灵活,因为Android中的每个应用程序都可以对自己感兴趣的广播进行注册,这样该程序就只会接收到自己所关心的广播内容,这些广播可能是来自于系统的,也可能是来自于其他应 ...

  8. android 监听网络状态

    今天,讲讲怎么监听手机网络状态的改变. 一.加入网络权限 获取网络信息需要在AndroidManifest.xml文件中加入相应的权限. <uses-permission android:nam ...

  9. Android通过使用系统广播监听网络状态的改变

    Android通过使用广播监听网络状态的改变 得先添加权限 //查看网络状态<uses-permission android:name="android.permission.ACCE ...

最新文章

  1. 发布 | 《工业安全大数据蓝皮书》(2021年)
  2. 成功解决AttributeError: Parent variable ‘<Variable: ID (dtype = numeric)>‘ is not the index of entity En
  3. 找不到_笔记本找不到无线网络怎么办
  4. Spring Boot——自定义Web配置类后无法访问/static文件夹下静态资源
  5. 硬盘数据恢复经验(转)
  6. Spring DataSource JNDI - Tomcat JNDI 配置示例
  7. java httpclient form_Java后台使用httpclient入门HttpPost请求(form表单提交,File文件上传和传输Json数据)...
  8. 世界地球日:全国网友用手机种出“保护黄河幸福林”
  9. mac vscode远程服务器
  10. mysqld_exporter报错Error 1146: Table 'my2.status' doesn't exist
  11. QT实现Linux下系统监控小工具
  12. Delphi判断是否有全屏程序
  13. newwifi2刷潘多拉固件
  14. 木马文件slader以及各种捆绑木马、流氓软件
  15. 德·摩根定律的验证(De Morgan’s Laws)
  16. 操作系统存储管理之虚拟存储与分页式虚拟存储系统
  17. OSChina 周四乱弹 ——来我数数,你们中间有几只毛毛虫
  18. 详解Linux基础网络服务之DNS域名解析
  19. Android国内5大主流音乐APP分析
  20. Java 读取文件 MD5 sha1 sha256 sha224 sha384 sha512

热门文章

  1. win10计算机管理看不见蓝牙,win10系统蓝牙不见了的解决方法
  2. python plot 时间_python – 在matplotlib中绘制时间与日期
  3. 动网论坛帖子跟帖展开/关闭测试
  4. js获取url传递得参数
  5. lua State加载部分库
  6. 十六进制转为float,float转为二进制
  7. Spring事务管理,使用@Transactional注解
  8. python class 2
  9. php 读xml的两种方式
  10. 异常为当IDENTITY_INSERT设置为OFF时 的解决