您的位置:

js判断浏览器窗口关闭,js中关闭窗口的方法

本文目录一览:

javascript判断网页是关闭还是刷新

刷新:

//对于ie,谷歌,360:

//页面加载时只执行onload

//页面刷新时,刷新之前执行onbeforeunload事件,在新页面即将替换旧页面时onunload事件,最后onload事件。

//页面关闭时,先onbeforeunload事件,再onunload事件。

//对于火狐:

//页面刷新时,只执行onunload;页面关闭时,只执行onbeforeunload事件

刷新的时候先onbeforeunload,然后取服务端请求数据,在新页面即将替换旧页面时onunload事件,而页面关闭时,先onbeforeunload事件,再立即onunload事件。那么在刷新的时候,onbeforeunload与onunload之间的时间肯定比关闭的时候时间长,经过测试确实如此。

关闭:

使用onunload或onbeforeunload可以监听浏览器关闭事件,但是无法区分关闭与刷新。以下js代码可以部分监听关闭浏览器的事件!

//鼠标相对于用户屏幕的水平位置 - 窗口左上角相对于屏幕左上角的水平位置 = 鼠标在当前窗口上的水平位置

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

//鼠标在当前窗口内时,nm,b为false;鼠标在当前窗口外时,nm,b为true。20这个值是指关闭按钮的宽度

var b = n document.documentElement.scrollWidth-20;

//鼠标在客户区内时,window.event.clientY0;鼠标在客户区外时,window.event.clientY0

if(b window.event.clientY 0 || window.event.altKey || window.event.ctrlKey){

关闭浏览器时你想做的事

}else if(event.clientY document.body.clientHeight || event.altKey){

关闭浏览器时你想做的事

}

这段js能监听到鼠标点击浏览器关闭按钮、浏览器状态栏鼠标右键弹出菜单中的关闭以及各种快捷键。但是双击浏览器坐上角图标关闭浏览器和关闭标签页无法监听。

js判断浏览器是否关闭

标签只有onload\onunload\onbeforeunload事件,而没有onclose事件。不管页面是关闭还是刷新都会执行onunload事件。如何捕捉到页面关闭呢?

页面加载时只执行onload

页面关闭时只执行onunload

页面刷新时先执行onbeforeunload,然后onunload,最后onload。这样我们可以在onbeforeunload中加一个标记,在onunload中判断该标记,即可达到判断页面是否真的关闭了。

js怎么判断浏览器 关闭

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "" 

html xmlns="" 

head 

titleJs智能判断浏览器是关闭还是刷新/title 

meta http-equiv="content-type" content="text/html;charset=gb2312" 

/head 

body 

关闭或刷新浏览器试试! 

script language="javascript" 

window.onbeforeunload=function(){ 

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

var b=ndocument.documentElement.scrollWidth-20; 

if(bwindow.event.clientY0||window.event.altKey){ 

alert("关闭"); 

}else{ 

alert("刷新"); 

/script 

/body 

/html

怎么用JS判断浏览器刷新还是关闭

页面加载时只执行onload

页面关闭时只执行onunload

页面刷新时先执行onbeforeunload,然后onunload,最后onload。

经过验证我得出的结论是:

//对于ie,谷歌,360:

//页面加载时只执行onload

//页面刷新时,刷新之前执行onbeforeunload事件,在新页面即将替换旧页面时onunload事件,最后onload事件。

//页面关闭时,先onbeforeunload事件,再onunload事件。

//对于火狐:

//页面刷新时,只执行onunload;页面关闭时,只执行onbeforeunload事件

那么回归正题,到底怎样判断浏览器是关闭还是刷新?我按照网上的各种说法实验千百遍,都未成功,其中各种说法如下:

window.onbeforeunload = function() //author: meizz

{

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 = ""; //这里可以放置你想做的操作代码

}else

{

alert("是刷新而非关闭");

}

}

window.onbeforeunload = function() //author: meizz

{

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 = ""; //这里可以放置你想做的操作代码

}else

{

alert("是刷新而非关闭");

}

}

function CloseOpen(event) {

if(event.clientX=0 event.clientY0) {

alert("关闭");

}

else

{

alert("刷新或离开");

}

}

这些方法都不管用,但是我并没有放弃,想啊想啊........

按照上面我得出结论,

//对于ie,谷歌,360:

//页面加载时只执行onload

//页面刷新时,刷新之前执行onbeforeunload事件,在新页面即将替换旧页面时onunload事件,最后onload事件。

//页面关闭时,先onbeforeunload事件,再onunload事件。

//对于火狐:

//页面刷新时,只执行onunload;页面关闭时,只执行onbeforeunload事件

刷新的时候先onbeforeunload,然后取服务端请求数据,在新页面即将替换旧页面时onunload事件,而页面关闭时,先onbeforeunload事件,再立即onunload事件。那么在刷新的时候,onbeforeunload与onunload之间的时间肯定比关闭的时候时间长,经过测试确实如此。

贴出我的测试代码:

var _beforeUnload_time = 0, _gap_time = 0;

var is_fireFox = navigator.userAgent.indexOf("Firefox")-1;//是否是火狐浏览器

window.onunload = function (){

_gap_time = new Date().getTime() - _beforeUnload_time;

if(_gap_time = 5)

$.post(pathName+"/back/bi!aaaa.s2?t="+_beforeUnload_time,{msg:"浏览器关闭",time:_gap_time},function(json){},"text");

else

$.post(pathName+"/back/bi!aaaa.s2?t="+_beforeUnload_time,{msg:"浏览器刷新",time:_gap_time},function(json){},"text");

}

window.onbeforeunload = function (){

_beforeUnload_time = new Date().getTime();

if(is_fireFox)//火狐关闭执行

$.post(pathName+"/back/bi!aaaa.s2?t="+_beforeUnload_time,{msg:"火狐关闭"},function(json){},"text");

};

js判断浏览器窗口关闭,js中关闭窗口的方法

2022-12-01
JS如何关闭当前浏览器窗口

2023-05-21
JS关闭浏览器窗口完全指南

2023-05-18
JS关闭当前窗口

2023-05-18
js窗口close事件(js弹出窗口关闭事件)

本文目录一览: 1、js有关闭窗口时的事件吗 2、怎样用JS实现关闭当前窗口 3、javascript有没有纯粹的window.onclose事件 js有关闭窗口时的事件吗 javascript捕获窗

2023-12-08
JS关闭浏览器详解

2023-05-17
php关闭浏览器方法,php关闭浏览器方法有哪些

2022-11-20
cookie控制js弹窗,弹出cookie的窗口怎么关闭

本文目录一览: 1、JS弹出对话框怎么写? 2、cookie控制一个IP 24小时只执行一次JS退出弹窗代码 3、弹窗广告怎么做?网页上出现的弹窗广告怎么操作? JS弹出对话框怎么写? 【1、最基本的

2023-12-08
java关闭窗口,java关闭窗口方法

2023-01-06
js怎么关闭网页,javascript关闭网页

本文目录一览: 1、怎样用JS关闭当前页面 2、js关闭窗口的几种方法 3、JS关闭窗口或JS关闭页面的几种代码 4、chrome怎么用JS关闭当前页 5、JS中如何关闭手动打开的页面 怎样用JS关闭

2023-12-08
JS如何关闭页面

2023-05-18
java关闭窗口,java关闭窗口的时候结束线程

2023-01-07
Bat文件中关闭命令窗口的方法

2023-05-20
chromejs模态窗口,chrome 模态窗口

本文目录一览: 1、JavaScript模态窗口焦点问题 2、最新版的chrome无法用js关闭窗口,怎么解决 3、如何在CHROME中实现用JS 弹出一个IE的窗口? JavaScript模态窗口焦

2023-12-08
js定义新窗口样式(js定义新窗口样式怎么设置)

本文目录一览: 1、求 JS 点击打开新窗口HTML代码! 2、怎么用js弹出一个新窗口 3、JS 打开新窗口的方法,求助 4、JS 打开新窗口 5、急用:网页设计:如何用JS实现:单击按钮就新打开一

2023-12-08
和js无限弹窗的代码相关的问题(阻止弹窗的代码)

本文目录一览: 1、求一个JS代码,无边框弹窗 2、怎样通过js做一个无限弹窗的网页 3、修改js弹窗广告代码 4、JS弹窗代码,白天弹,晚上不弹 5、这段JS代码写重复弹出? 6、无限弹出网页代码

2023-12-08
超详细的js弹出窗口代码大全,js弹窗提示代码

本文目录一览: 1、网页制作中的弹出窗口代码 2、如何用JS实现关闭浏览器窗口强制弹出广告窗口(退弹代码) 3、使用js弹出一个新窗口的参数有哪些 4、JS弹出对话框怎么写? 网页制作中的弹出窗口代码

2023-12-08
JS关闭当前页面

2023-05-18
为什么java窗口关不掉(java怎么关闭窗口)

2022-11-14
js强制弹出窗口代码研究,恶作剧代码一直弹出窗口

本文目录一览: 1、求.js文件弹出窗口代码 2、js弹出窗口的命令 3、JS弹出对话框怎么写? 4、如何用JS实现关闭浏览器窗口强制弹出广告窗口(退弹代码) 5、JavaScript怎么实现网页右下

2023-12-08