Onunload,onbeforeunload都是在刷新或关闭时调用,可以在<script>脚本中通过window.onunload来指定或者在<body>里指定。区别在于onbeforeunload在onunload之前执行,它还可以阻止onunload的执行。

Onbeforeunload也是在页面刷新或关闭时调用,Onbeforeunload是正要去服务器读取新的页面时调用,此时还没开始读取;而onunload则已经从服务器上读到了需要加载的新的页面,在即将替换掉当前页面时调用。Onunload是无法阻止页面的更新和关闭的。而 Onbeforeunload 可以做到。例如一个考试系统,涉及到防止用户半途退出考试(有意或者无意),代码如下:

<body onbeforeunload=" checkLeave()">
<script>
function checkLeave(){
    event.returnValue="确定放弃考试?(考试作废,不记录成绩)";
}
</script>

这样可以让用户确认是否要退出考场,其实BLOGJAVA在用户编写BLOG时,如果不保存而跳转到其他页面,也会有一个确认的提示(防止误操作),也是用到Onbeforeunload。

另外还可以用来在页面关闭的时候关闭session,代码如下(注:用window.screenLeft > 10000 来区分关闭和刷新操作):

<body onbeforeunload=" closeSession()">
<script>
function closeSession (){
    //关闭(刷新的时候不关闭Session)
    if(window.screenLeft>10000){
       //关闭Session的操作(可以运用AJAX)
    }
}
</script>

Onunload与Onbeforeunload的应用与区别相关推荐

  1. onload、onunload、onbeforeunload的区别

    在做项目时经常会频繁的打开和关闭页面,如果页面中有需要编辑的内容,这时如果直接关闭,显得不是很友好,那有什么办法避免这种情况发生吗,其实原生的js已经为我们提供现成的方法onbeforeunload, ...

  2. onload、onunload 和 onbeforeunload的区别

    window.onload事件设置页面加载时执行的动作,即进入页面的时候执行的动作. window.onunload已经从服务器上读到了需要加载的新的页面,在即将替换掉当前页面时调用 一般用于设置当离 ...

  3. 离开页面触发事件onunload、onbeforeunload区别

    onunload和onbeforeunload两个事件都是在执行页面刷新.关闭.浏览器关闭时能触发, 不过在访问服务器读取新的页面时执行顺序有所不同,并且onunload无法阻止页面的关 闭与刷新,o ...

  4. Onunload与Onbeforeunload

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

  5. Onunload,onbeforeunload作用,调用时机

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

  6. onunload、onbeforeunload事件详解

    最近项目中做到一个功能:在上传页面用户开始上传文件之后用户点击任意跳转都需要弹出提示层进行二次确定才允许他进行跳转,这样做的目的是为了防止用户的错误操作导致这珍贵的UGC 流失(通常用户在一次上传不成 ...

  7. onunload、onbeforeunload事件详解--zhuan

    最近项目中做到一个功能:在上传页面用户开始上传文件之后用户点击任意跳转都需要弹出提示层进行二次确定才允许他进行跳转,这样做的目的是为了防止用户的错误操作导致这珍贵的UGC 流失(通常用户在一次上传不成 ...

  8. html5 关闭窗口事件,web窗口关闭事件之onunload、onbeforeunload事件详解

    最近用到一个问题,当修改一篇内容时需要把此内容锁定,提交修改后解除锁定.那么问题出现了,当用户点了修改但未提交直接关掉窗口,那么此条信息一直处理锁定状态导致其他人员没办法修改. 在这里用到的是 onb ...

  9. js中unload什么意思_JS之onunload、onbeforeunload事件详解

    简介 onunload,onbeforeunload都是在刷新或关闭时调用,可以在 onbeforeunload 是正要去服务器读 取新的页面时调用,此时还没开始读取:而onunload则已经从服务器 ...

最新文章

  1. Nature综述:如何获得理想的微生物组
  2. R语言笔记1:数据类型(向量、数组、矩阵、 列表和数据框)
  3. SAP Retail for SAP (non-Retail) Experts
  4. 架构演进之「微服务架构」
  5. Android - MVP个人愚见
  6. php 发出get与post请求
  7. InnoDB的ib_logfile写入策略
  8. html表单页脚,HTML 表格
  9. mysql 5.5 免安装_mysql 5.5.56免安装版配置方法
  10. MySQL date_format()函数
  11. Thread 线程同步、线程状态
  12. redis队列(list)
  13. 为什么谷歌被骂上热搜一点也不冤,详解FLoC背后联邦计算
  14. 有关什么情况下session会失效
  15. 微信小程序云开发如何实现读取和下载excel文件导入数据到云数据库中?简单好理解
  16. yolo和以往算法的区别/yolo为什么叫yolo
  17. 快捷支付各种绑卡鉴权方式
  18. 一分钟了解“查期刊的SCI分区”
  19. oracle火狐,火狐浏览器下载 Mozilla 火狐浏览器 Firefox v87.0 免费官方正式安装版 下载-脚本之家...
  20. PyTorch1.9.1 GPU版本安装(python3.8+pyTorch1.9.1, torch1.9.1/cu111 + torchvision0.10.1/cu111)

热门文章

  1. 华硕固件安装扩展插件_华硕RT-AC1200GU安装迅雷插件简要教程
  2. 计算机基础苏亮,数学建模_苏亮_2012011289_营销活动策划_计划解决方案_实用文档.doc...
  3. 再见,Kotlin !你好,Java !
  4. python拼图游戏_Python加pyGame实现的简单拼图游戏实例
  5. JavaScript正则表达式验证邮箱
  6. LivePlayerH5直播点播播放器配置如何配置SWF路径
  7. 浏览器指纹怎么防?反指纹浏览器帮你避免大数据“杀熟”
  8. 继电器模块和L298N电机驱动模块的使用
  9. 智能手机背后隐藏的第二系统——RTOS
  10. xuperchain环境搭建及智能合约应用