js判断页面关闭 仅支持IE6

2024-04-26 10:18
文章标签 页面 js 判断 支持 关闭 ie6

本文主要是介绍js判断页面关闭 仅支持IE6,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

关闭页面时同时执行onbeforeunload和onunload

1、先执行onbeforeunload,在页面还没关闭时执行,所以可以通过onbeforeunload阻止执行onunload,例如:

     window.event.returnValue = ""; //这里可以放置你想做的操作代码  

2、后执行onunload,是在页面关闭以后执行的

 

由于页面刷新和关闭都会执行这两个方法,如果只想在关闭页面的时候做某些操作,可以通过如下代码做判断(注意:仅仅支持IE6)

 

    if(window.event.clientX <= 0 || window.event.clientY <=0){alert("关闭");}else{            alert("刷新");}

 在网上查了好多别的方法来判断是否是关闭页面,通过验证都不精确,典型的方法有

 

if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey||event.ctrlKey)
{//判断event.altKey是为了Alt+F4关闭的情况;判断event.ctrlKey是为了Ctrl+W关闭的情况//document.body.clientWidth不包括滚动条,而关闭按钮恰好在滚动条右侧。window.event.returnValue="";
}
 
                  var n = window.event.screenX - window.screenLeft;   var b = n > document.documentElement.scrollWidth-20;   if(b && window.event.clientY < 0 || window.event.altKey)   {   alert("是关闭而非刷新");   window.event.returnValue = ""; //这里可以放置你想做的操作代码   }   

 以上这两种方法都是通过判断鼠标是否点击浏览器右上角的X来关闭页面,计算鼠标放在右上角的X的位置与浏览器右侧滚动条位置来判断是不精确的,如果把鼠标放在关闭按钮偏向还原按钮那边则判断不出来是关闭页面事件

这篇关于js判断页面关闭 仅支持IE6的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/937316

相关文章

Android WebView无法加载H5页面的常见问题和解决方法

《AndroidWebView无法加载H5页面的常见问题和解决方法》AndroidWebView是一种视图组件,使得Android应用能够显示网页内容,它基于Chromium,具备现代浏览器的许多功... 目录1. WebView 简介2. 常见问题3. 网络权限设置4. 启用 JavaScript5. D

一文教你解决Python不支持中文路径的问题

《一文教你解决Python不支持中文路径的问题》Python是一种广泛使用的高级编程语言,然而在处理包含中文字符的文件路径时,Python有时会表现出一些不友好的行为,下面小编就来为大家介绍一下具体的... 目录问题背景解决方案1. 设置正确的文件编码2. 使用pathlib模块3. 转换路径为Unicod

如何关闭 Mac 触发角功能或设置修饰键? mac电脑防止误触设置技巧

《如何关闭Mac触发角功能或设置修饰键?mac电脑防止误触设置技巧》从Windows换到iOS大半年来,触发角是我觉得值得吹爆的MacBook效率神器,成为一大说服理由,下面我们就来看看mac电... MAC 的「触发角」功能虽然提高了效率,但过于灵敏也让不少用户感到头疼。特别是在关键时刻,一不小心就可能触

Flutter监听当前页面可见与隐藏状态的代码详解

《Flutter监听当前页面可见与隐藏状态的代码详解》文章介绍了如何在Flutter中使用路由观察者来监听应用进入前台或后台状态以及页面的显示和隐藏,并通过代码示例讲解的非常详细,需要的朋友可以参考下... flutter 可以监听 app 进入前台还是后台状态,也可以监听当http://www.cppcn

C++实现回文串判断的两种高效方法

《C++实现回文串判断的两种高效方法》文章介绍了两种判断回文串的方法:解法一通过创建新字符串来处理,解法二在原字符串上直接筛选判断,两种方法都使用了双指针法,文中通过代码示例讲解的非常详细,需要的朋友... 目录一、问题描述示例二、解法一:将字母数字连接到新的 string思路代码实现代码解释复杂度分析三、

MySQL表锁、页面锁和行锁的作用及其优缺点对比分析

《MySQL表锁、页面锁和行锁的作用及其优缺点对比分析》MySQL中的表锁、页面锁和行锁各有特点,适用于不同的场景,表锁锁定整个表,适用于批量操作和MyISAM存储引擎,页面锁锁定数据页,适用于旧版本... 目录1. 表锁(Table Lock)2. 页面锁(Page Lock)3. 行锁(Row Lock

Node.js net模块的使用示例

《Node.jsnet模块的使用示例》本文主要介绍了Node.jsnet模块的使用示例,net模块支持TCP通信,处理TCP连接和数据传输,具有一定的参考价值,感兴趣的可以了解一下... 目录简介引入 net 模块核心概念TCP (传输控制协议)Socket服务器TCP 服务器创建基本服务器服务器配置选项服

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N

禁止HTML页面滚动的操作方法

《禁止HTML页面滚动的操作方法》:本文主要介绍了三种禁止HTML页面滚动的方法:通过CSS的overflow属性、使用JavaScript的滚动事件监听器以及使用CSS的position:fixed属性,每种方法都有其适用场景和优缺点,详细内容请阅读本文,希望能对你有所帮助... 在前端开发中,禁止htm

Java判断多个时间段是否重合的方法小结

《Java判断多个时间段是否重合的方法小结》这篇文章主要为大家详细介绍了Java中判断多个时间段是否重合的方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录判断多个时间段是否有间隔判断时间段集合是否与某时间段重合判断多个时间段是否有间隔实体类内容public class D