网站首页 > 知识剖析 正文
浏览器关闭提示, 兼容IE、FF、Chrome,其它浏览器可以扩展, 这里只对<a>标签做特别处理,因为 onbeforeunload事件点击a连接弹框、刷新等很多操作都会触发此事件,可能还有其它的情况也会触发,参考这里的逻辑在进行修改,
//页面离开或者浏览器关闭的时候给予提示 防止用户误操作 离开当前页面未保存数据可能丢失 window.onbeforeunload = function(event) { return beforunload(event); }; function beforunload(event) { event = event ? event : (window.event ? window.event : null); var myIE = myBrowser; if (myIE=="IE") { // IE var cy = event.clientY || event.target.event.clientY; var ak = event.altKey || event.target.event.altKey; if (cy < 0 || ak) { return "确定要离开本页面吗?"; } } else { // Firefox、Chrome var nodeName = event.currentTarget.document.activeElement.nodeName; if (nodeName!="A") { return "确定要离开本页面吗?"; } } } /*** * 获取当前浏览器类型 */ function myBrowser { var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 var isOpera = userAgent.indexOf("Opera") > -1; if (isOpera) { //判断是否Opera浏览器 return "Opera" }; if (userAgent.indexOf("Firefox") > -1) { //判断是否Firefox浏览器 return "FF"; }; if (userAgent.indexOf("Chrome") > -1){ return "Chrome"; }; if (userAgent.indexOf("Safari") > -1) { //判断是否Safari浏览器 return "Safari"; }; if (userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) { //判断是否IE浏览器 return "IE"; }; }
猜你喜欢
- 2024-11-17 Android对so体积优化的探索与实践
- 2024-11-17 JavaScript对象(javascript对象主要包括)
- 2024-11-17 前端埋点统计方案思考(前端数据埋点)
- 2024-11-17 第27节 函数、作用域及垃圾回收-Javascript-零点程序员-王唯
- 2024-11-17 微信小程序学习笔记:Page()(小程序 page)
- 2024-11-17 广州蓝景分享—搞懂js事件、事件流(捕获冒泡)、事件委托
- 2024-11-17 程序员都必掌握的前端教程之JavaScript基础教程(下)
- 2024-11-17 DOM核心内容(dom的核心部分包括)
- 2024-11-17 小程序生命周期解析(从概念、启动、运行、销毁场景的全面解析)
- 2024-11-17 微信小程序学习笔记(二)——开发之框架
- 04-29php开发者composer使用看这一篇就够了
- 04-29引用和变量声明在不同语言中的实作
- 04-29PHP 没你想的那么差
- 04-29Ubuntu linux 上的 Nginx 和 Php 安装
- 04-29CentOS下通过yum搭建lnmp(单版本PHP)
- 04-29为什么 PHP8 是个高性能版本
- 04-29PHP8函数包含文件-PHP8知识详解
- 04-29使用无参数函数进行命令执行
- 最近发表
- 标签列表
-
- xml (46)
- css animation (57)
- array_slice (60)
- htmlspecialchars (54)
- position: absolute (54)
- datediff函数 (47)
- array_pop (49)
- jsmap (52)
- toggleclass (43)
- console.time (63)
- .sql (41)
- ahref (40)
- js json.parse (59)
- html复选框 (60)
- css 透明 (44)
- css 颜色 (47)
- php replace (41)
- css nth-child (48)
- min-height (40)
- xml schema (44)
- css 最后一个元素 (46)
- location.origin (44)
- table border (49)
- html tr (40)
- video controls (49)