Onunload,onbeforeunload都是在刷新或关闭时调用,可以在<script>脚本中通过window.onunload来指定或者在<body>里指定。区别在于onbeforeunload在onunload之前执行,它还可以阻止onunload的执行。 
  Onbeforeunload也是在页面刷新或关闭时调用,Onbeforeunload是正要去服务器读取新的页面时调用,此时还没开始读取;而onunload则已经从服务器上读到了需要加载的新的页面,在即将替换掉当前页面时调用。Onunload是无法阻止页面的更新和关闭的。而 Onbeforeunload 可以做到。

页面加载时只执行onload 
页面关闭时先执行onbeforeunload,最后onunload 
页面刷新时先执行onbeforeunload,然后onunload,最后onload。

1、onbeforeunload事件: 
  说明:目前三大主流浏览器中firefox和IE都支持onbeforeunload事件,opera尚未支持。 
  用法: 
   ·object.onbeforeunload = handler 
   ·<element onbeforeunload = “handler” … ></element> 
  描述: 
   事件触发的时候弹出一个有确定和取消的对话框,确定则离开页面,取消则继续待在本页。handler可以设一个返回值作为该对话框的显示文本。

window.onbeforeunload = function (e) {
e.returnValue = '请确认是否离开当前页面?';
}

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


2.onunload事件 
  用法: 
   ·object.onbeforeunload = handler 
   ·<element onbeforeunload = "handler"></element>    描述: 
   当用户关闭一个页面时触发 onunload 事件。    触发于: 
   ·关闭浏览器窗口 
   ·通过地址栏或收藏夹前往其他页面的时候 
   ·点击返回,前进,刷新,主页其中一个的时候 
   ·点击 一个前往其他页面的url连接的时候 
   ·调用以下任意一个事件的时候:click,document write,document open,document close,window close ,window navigate ,window NavigateAndFind,location replace,location reload,form submit. 
   ·当用window open打开一个页面,并把本页的window的名字传给要打开的页面的时候。 
   ·重新赋予location.href的值的时候。 
   ·通过input type=”submit”按钮提交一个具有指定action的表单的时候。 

刷新或关闭时调用onbeforeunload的更多相关文章

  1. 用js判断页面刷新或关闭的方法

    Onunload,onbeforeunload都是在刷新或关闭时调用,可以在<script>脚本中通过window.onunload来指定或者在<body>里指定.区别在于on ...

  2. js捕捉IE窗口失去焦点事件,判断离开页面刷新或关闭的方法

    js捕捉IE窗口失去焦点事件,判断离开页面刷新或关闭的方法 javascript如何捕捉IE窗口失去焦点事件window.onblur = function(e) { //you code}; 弹框的 ...

  3. 关闭浏览器事件 onbeforeunload和onunload

    在做毕设的时候,需要在关闭浏览器的时候向后台服务器修改用户在线状态.首先讲一下 onbeforeunload 和 onunload(都是在刷新或关闭时调用) 的区别: (1)onbeforeunloa ...

  4. 简述在Js或Vue中监听页面的刷新、关闭操作

    1.背景 大家是否经常遇到在关闭网页的时候,会看到一个确定是否离开当前页面的提示框?想一些在线测试系统.信息录入系统等就经常会有这一些提示,避免用户有意或者无意中关掉了页面,导致数据丢失.而最近在做项 ...

  5. Js/Jquery 关闭 离开或刷新当前页面时提醒,和执行解绑取消提醒

    如图,现在的 cnblogs 或者QQ邮箱编辑页面,刷新.关闭提醒: <script src="../../Common/Js/jquery-1.8.1.min.js"> ...

  6. JS在即将离开当前页面(刷新或关闭)时触发事件

    // onbeforeunload 事件在即将离开当前页面(刷新或关闭)时触发 window.onbeforeunload = function () { return /^\#\/ipinfo/.t ...

  7. 编写SqlHelper使用,在将ExecuteReader方法封装进而读取数据库中的数据时会产生Additional information: 阅读器关闭时尝试调用 Read 无效问题,解决方法与解释

    在自学杨中科老师的视频教学时,拓展编写SqlHelper使用,在将ExecuteReader方法封装进而读取数据库中的数据时 会产生Additional information: 阅读器关闭时尝试调用 ...

  8. SqlDataReader阅读器关闭时尝试调用 HasRows 无效

    SqlDataReader阅读器关闭时尝试调用 HasRows 无效 原创长白山上放羊娃 发布于2018-07-25 00:29:27 阅读数 538  收藏 展开 在SqlHelper中封装好的Sq ...

  9. JavaScript当页面关闭时向后台发送请求

    今天做项目时遇上一个需求,当浏览器或页面关闭时将数据存储到数据库内.实现思想是采用js监测onunload然后发送请求.结果失败,刷新可以发送但是关闭并不能,整了一整天并没有解决,最后找到了解决办法. ...

随机推荐

  1. Linux防火墙配置(iptables, firewalld)

    netfilter和底层实现 iptables firealld Linux中的防火墙 RHEL中有几种防火墙共存: iptables firewalld ip6tables ebtables 这些软 ...

  2. java容器collection的一些简单特点

    1.List ArrayList 可随机访问元素,但中间插入和一处元素较慢 LinkedList 在中间进行的插入和删除操作代价较小,随机访问比ArrayList较慢 特性集比ArrayList大 2 ...

  3. iOS Device Specifications Grid

  4. Enum

    1.定义时使用enum关键字定义. 2.隐式继承了java.lang.Enum类,所以不能再继承其他类了. 3.隐式的final修饰符,所以不能被其他类继承. package enumTest; pu ...

  5. 多线程获取不到HttpContext

    问题一:多线程下获取文件绝对路径 当我们使用HttpContext.Current.Server.MapPath(strPath)获取绝对路径时HttpContext.Current为null,解决办 ...

  6. mysql5.1升级到mysql5.6

    这么大跨度的升级,本身不推荐.升级应该是循序渐进的,以防止不兼容.如果确实要这么做,你先要确保你的客户端管理工具要能兼容,比如phpmyadmin,此次升级依然存在一个问题,mysql server和 ...

  7. FMDB简单封装和使用

    工具:火狐浏览器+SQLite Manager插件 ; Xcode; FMDB库; 效果: 项目地址: https://github.com/sven713/PackFMDB 主要参考这两篇博客: 1 ...

  8. django学习笔记

    django笔记----建立疾病预测系统的web应用                            @buyizhiyou               工作环境:ubuntu16.04LTS+ ...

  9. Angular-表单动态添加删除

    angular本身不允许去操作DOM,在angular的角度来说,所有操作都以数据为核心,剩下的事情由angular来完成.所以说,想清楚问题的根源,解决起来也不是那么困难. 前提 那么,要做的这个添 ...

  10. google play iap 常见问题

    1.测试阶段query时获取的sku对象为空 解:测试阶段只能使用如下sku // private static final String SKU_TEST = "android.test. ...