onbeforeunload

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

该事件可用于弹出对话框,提示用户是继续浏览页面还是离开当前页面。

对话框默认的提示信息根据不同的浏览器有所不同,标准的信息类似 "确定要离开此页吗?"。该信息不能删除。

但你可以自定义一些消息提示与标准信息一起显示在对话框。

注意: 如果你没有在

元素上指定 onbeforeunload 事件,则需要在 window 对象上添加事件,并使用 returnValue 属性创建自定义信息(查看以下语法实例)。

注意: 在 Firefox 浏览器中,只显示默认提醒信息(不显示自定义信息)。

使用方法:

window.οnbefοreunlοad=function(){ return "你确定要离开吗"; }

事件触发的时候弹出一个有确定和取消的对话框,确定则离开页面,取消则继续待在本页。当然你可以自定义提示文本。

那么,当我只需要在我离开时执行这个函数,而刷新的时候不执行,那怎么做呢?

window.onbeforeunload = function() {

var n = window.event.screenX - window.screenLeft;

var b = n & gt;

document.documentElement.scrollWidth - 20;

if (! (b & amp; & amp; window.event.clientY & lt; 0 || window.event.altKey)) {

//window.event.returnValue = "真的要刷新页面么?";

//这里放置我想执行缓存的代码 cacheFunction();

}

}

这样,我离开页面时,可以执行我的缓存代码,而不弹出提示框,我刷新时也不弹出提示框,也不执行。值得一提的时,这个时候,将要ajax设置为同步,即:ajax里面的 async改为: false;

浏览器兼容情况

IE、Chrome、Safari 完美支持

Firefox 不支持文字提醒信息

Opera 不支持

onunload

onunload 事件在用户退出页面时发生。

使用方法和onbeforeunload类似

window.onunload = function(){ return "你确定要离开吗" }

浏览器兼容情况

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

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

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

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

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

「梦想一旦被付诸行动,就会变得神圣,如果觉得我的文章对您有用,请帮助本站成长」

分享到:

打赏

谢谢你请我吃鸡腿*^_^*

支付宝扫一扫打赏

微信扫一扫打赏

html页面退出用什么函数,离开网页弹窗函数onbeforeunload与onunload相关推荐

  1. 离开网页弹窗函数onbeforeunload与onunload

    网页在按F5刷新的时候 默认是没有confirm 提示框的,需要监听onbeforeunload函数才会有. 刷新之后弹出来的提示框,是浏览器自带的,我们监听不了 "重新加载" 和 ...

  2. 网页页面退出检测- 解决unload onbeforunload不好用

    网页页面退出检测 写在2020-03-11,亲测可用~~ 拒绝转载抄袭,误人子弟!!! 最近写代码的时候遇到一个问题,那就是需要检测网页退出状态.本来寻思上网搜索一下,发现CSDN上全是拷贝的,要不就 ...

  3. android webview 网页图片加载不出来、显示不全、进入某页面退出,h5页面滑不了,点不了等功能异常等问题集锦

    在我们的android开发中,难免会嵌套一些h5页面在APP中,固然是减轻了开发者的负担,但也容易遇到一些很奇怪的问题. 一.网页图片加载不出来 此前笔者公司由于h5网页链接频繁被劫持篡改(链接被篡改 ...

  4. JS一起学01:css复习、js基础知识、事件、参数、函数、网页换肤、if判断、className问题、浏览器执行顺序

    一.html/css 1. 什么是盒子模型?     padding+border+width/height 2. float 浮动 (1)浮动的特性         脱离文档流         行内 ...

  5. [JavaScript][AJAX]onreadystatechange事件;AJAX含义及组成部分;AJAX工作原理/HTTP工作原理;一个页面从输入url到呈现网页过程;FormData对象;防抖

    目录 onreadystatechange事件 AJAX含义及组成部分 AJAX工作原理/HTTP工作原理 一个页面从输入url到呈现网页过程 TCP三次握手图示 渲染引擎渲染网页流程图 ​编辑 Fo ...

  6. js 和jQuery(自动执行函数)立即执行函数和页面加载完后执行函数写法

    js 立即执行函数的写法. js 立即执行函数只能用于匿名函数,如果声明了函数名是不可以用立即执行的,通常在函数表达式后加一对小括号()用于立即执行 如果想让函数不被调用的情况下,立即自动执行,需要在 ...

  7. html设置页面编码gbk,GBK及UTF-8网页编码定义与应用

    网页编码英文译为web page encoding,是在网页中指定其特定的字符编码格式的库. GBK是国家标准GB2312基础上扩容后兼容GB2312的标准.GBK的文字编码是用双字节来表示的,即不论 ...

  8. php到期自动过期,PHP实现页面长时间无操作,自动过期函数

    PHP实现页面长时间无操作,自动过期函数 发布于 2015-01-13 19:55:41 | 878 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertex ...

  9. 微信小程序 - 自定义组件中类似页面 onShow 的页面显示就触发的生命周期钩子函数(页面回退时更新数据常用, 例如回退页面更新子组件数据, 回退更新子组件中 data 内容)

    前言 在微信小程序中,用户回退页面触发更新数据的操作,一般都是在 页面 onShow() 中写上执行更新的函数即可. 但如果咱们把数据和方法都写在了自定义子组件中,那么用户回退页面时, 更新数据就成了 ...

最新文章

  1. html 移动端(手机)调试 vconsole
  2. java进销存培训_Java实例学习——企业进销存管理系统(2)
  3. 计算机视觉:图像分类定位(单一目标检测)python实现
  4. java对cpu线程的要求_java-CPU份额对线程有什么影响
  5. Mac下安装jdk8
  6. 一次Redis client组件性能分析
  7. 当下大部分互联网创业公司为什么都愿意采用增量模型来做开发?
  8. C++虚继承的实现原理、内存分布、作用
  9. QGIS中如何加载identify
  10. 李迟2021年4月知识总结
  11. C++调用编译好的darknet来进行物体监测
  12. 2021 年度最佳开源软件榜单
  13. linux下低格u盘,拯救U盘,一个靠谱的强制低格的工具
  14. 郑州园博园“私房照”曝光,8月试运营对市民免费开放!这可是咱郑州人家门口的“苏州园林”!...
  15. Keil:Undefined symbol ......(referred from......)
  16. 各类开发生产环境缩写
  17. C语言兔子生兔子问题
  18. IBM MQ常用的命令
  19. RTP协议封装H264/H265/AAC
  20. NS3 仿真系列资料大全

热门文章

  1. 干货!Elasticsearch性能优化实战指南
  2. 力扣--替换后的最长重复字符
  3. MySQL的基本查询(二)
  4. C++中的继承(一)
  5. 网易云信流媒体服务端架构设计与实现
  6. 全面拥抱HDR时机已到?
  7. 2021博客之星,请帮忙投上宝贵一票
  8. 用lua扩展你的Nginx(整理)
  9. Ubuntu 14.04下编译WebRTC
  10. 基于STM32CubeMX创建STM32L496ZGTx的工程