JavaScript中判断页面关闭、页面刷新的实现代码
今天由于项目需要判断用户离开页面时要判断用户的行为是关闭还是刷新
虽然没有直接的方法,但通过一定的技巧也能做到
不得不感叹JavaScript的强大!!
请看一下代码:
window.onunload = function(){
var a_n = window.event.screenX - window.screenLeft;
var a_b = a_n > document.documentElement.scrollWidth-20;
if(a_b && window.event.clientY< 0 || window.event.altKey){
alert('关闭页面行为');
}else{
alert('跳转或者刷新页面行为');
}
}
其实就是通过离开页面行为时间onunload触发时间去检测此时的浏览器的窗口大小,根据大小由此判断用户是刷新,跳转或是关闭行为。
兼容各大浏览器!
相关推荐
-
JS区分浏览器页面是刷新还是关闭
Web开发者在系统开发中经常要面对产品经理各式各样的需求,当然,大部分对产品体验还是有帮助的,例如我们今天提到的刷新页面,前进后退,关闭浏览器标签时,为了避免用户误操作,需给出二次确认提示框,这个相信大家都非常熟悉了,采用浏览器提供的BOM事件机制就可以解决,使用window对象的onbeforeunload事件即可,如果产品经理只提出这样的需求,那确实无可厚非,然而其需要的不仅仅是这些... 例如,我们一次项目开发中,产品经理就针对我们的实现提出了"改进方案": 你们这弹出框太丑了,
-
js关闭模态窗口刷新父页面或跳转页面
有两个窗口: A窗口(父),B窗口(模态) A窗口里有一个DATAGRID,一个按钮. 点击按钮时,弹出B窗口(模态).在B窗口中添加数据,提交后,要求B窗口自关闭,然后刷新A窗口(父) 复制代码 代码如下: <script type="text/javascript"> function openSubWin() { window.showModalDialog('b.html', 'newwindow', 'height=500, width=400, top=0, l
-
Js智能判断浏览器是关闭还是刷新的代码
Js智能判断浏览器是关闭还是刷新 关闭或刷新浏览器试试! window.onbeforeunload=function(){ var n=window.event.screenX-window.screenLeft; var b=n>document.documentElement.scrollWidth-20; if(b&&window.event.clientY [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
-
javascript 防止刷新,后退,关闭
复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head> <title> New Document </title> </head> <script language="javascript"> function RunOnBeforeUnload() {window.
-
JavaScript常用的返回,自动跳转,刷新,关闭语句汇总
本文实例讲述了JavaScript常用的返回,自动跳转,刷新,关闭语句.分享给大家供大家参考.具体如下: 1. Javascript 返回上一页: 复制代码 代码如下: history.go(-1) 返回两个页面: 复制代码 代码如下: history.go(-2) 2. 后退: 复制代码 代码如下: history.back() 3. 返回下一页: 复制代码 代码如下: window.history.forward() 4. 返回第几页,也可以使用访问过的URL: 复制代码 代码如下: win
-
js监控IE火狐浏览器关闭、刷新、回退、前进事件
<html> <head> <title>test</title> <script language ="javaScript"> <!--关闭浏览器 --> var flag = true; window.onbeforeunload = function () { if (flag) { var evt = window.event || arguments[0]; var userAgent = naviga
-
js关闭子窗体刷新父窗体实现方法
复制代码 代码如下: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->使用open方式打开的窗体 //使用地址方式 window.opener.location.href='m_Shedule_Main.aspx'; //使用浏览器刷新功能 window.opener.location.reload(); 使用showModalDialog方法 wi
-
基于JavaScript判断浏览器到底是关闭还是刷新(超准确)
本文是小编总结的一些核心内容,个人感觉对大家有所帮助,具体内容请看下文: 页面加载时只执行onload 页面关闭时只执行onunload 页面刷新时先执行onbeforeunload,然后onunload,最后onload. 经过验证我得出的结论是: //对于ie,谷歌,360: //页面加载时只执行onload //页面刷新时,刷新之前执行onbeforeunload事件,在新页面即将替换旧页面时onunload事件,最后onload事件. //页面关闭时,先onbeforeunload事件,
-
用js判断页面刷新或关闭的方法(onbeforeunload与onunload事件)
Onunload,onbeforeunload都是在刷新或关闭时调用,可以在<script>脚本中通过window.onunload来指定或者在<body>里指定.区别在于onbeforeunload在onunload之前执行,它还可以阻止onunload的执行. Onbeforeunload也是在页面刷新或关闭时调用,Onbeforeunload是正要去服务器读取新的页面时调用,此时还没开始读取:而onunload则已经从服务器上读到了需要加载的新的页面,在即将替换掉当前页面时调
-
判断页面是关闭还是刷新的js代码
<body>标签只有onload\onunload\onbeforeunload事件,而没有onclose事件.不管页面是关闭还是刷新都会执行onunload事件.如何捕捉到页面关闭呢? 页面加载时只执行onload 页面关闭时只执行onunload 页面刷新时先执行onbeforeunload,然后onunload,最后onload.这样我们可以在onbeforeunload中加一个标记,在onunload中判断该标记,即可达到判断页面是否真的关闭了. <html> <he
-
javascript判断网页是关闭还是刷新
原理就是通过离开页面行为时间onunload触发时间去检测此时的浏览器的窗口大小,根据大小由此判断用户是刷新,跳转或是关闭行为程序 代码如下 window.onunload = function(){ var a_n = window.event.screenX - window.screenLeft; var a_b = a_n > document.documentElement.scrollWidth-20; if(a_b && window.event.clientY<
随机推荐
- Lua极简入门指南(六):模块
- Angular JS 生成动态二维码的方法
- Oracle 启动例程 STARTUP参数说明
- JSP 自定义标签之一 简单实例
- 详解JavaScript模块化开发
- 12306动态验证码启发之ASP.NET实现动态GIF验证码(附源码)
- jQuery图片轮播实现并封装(一)
- Ajax提交与传统表单提交的区别说明
- Jquery easyUI 更新行示例
- Spring中属性文件properties的读取与使用详解
- Android下拉列表选项框及指示箭头动画
- 关于Zend Studio 配色方案插件的介绍
- Win Server 2003秘笈放送
- Android Studio 3.0中mipmap-anydpi-v26是什么东东
- Java开发之spring security实现基于MongoDB的认证功能
- Django REST为文件属性输出完整URL的方法
- springboot使用JdbcTemplate完成对数据库的增删改查功能
- 使用实现XlsxWriter创建Excel文件并编辑
- python实现微信机器人: 登录微信、消息接收、自动回复功能
- python创建属于自己的单词词库 便于背单词
