您的位置:首页 > Web前端 > JavaScript

js判断浏览器是否关闭

2014-11-04 11:13 204 查看
http://www.blogjava.net/wyz191/archive/2008/12/08/245089.html JS

window.onunload=function(){

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

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

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

alert("关闭");

}else{

alert("刷新");

}

}

三大主流浏览器中firefox和IE都支持onbeforeunload事件,opera尚未支持。

用法:

object.onbeforeunload = handler

<element onbeforeunload = “handler” … ></element>

描述:

事件触发的时候弹出一个有确定和取消的对话框,确定则离开页面,取消则继续待在本页。

handler可以设一个返回值作为该对话框的显示文本。

触发于:

关闭浏览器窗口

通过地址栏或收藏夹前往其他页面的时候

点击返回,前进,刷新,主页其中一个的时候

点击 一个前往其他页面的url连接的时候

调用以下任意一个事件的时候:click,document write,document open,document close,window close ,window navigate ,window NavigateAndFind,location replace,location reload,form submit.

当用window open打开一个页面,并把本页的window的名字传给要打开的页面的时候。

重新赋予location.href的值的时候。

通过input type=”submit”按钮提交一个具有指定action的表单的时候。

可以用在以下元素:

BODY, FRAMESET, window

平台支持:

IE4+/Win, Mozilla 1.7a+, Netscape 7.2+, Firefox0.9+

标签只有onload\onunload\onbeforeunload事件,而没有onclose事件。不管页面是关闭还是刷新都会执行onunload事件。如何捕捉到页面关闭呢?
页面加载时只执行onload
页面关闭时只执行onunload
页面刷新时先执行onbeforeunload,然后onunload,最后onload。这样我们可以在onbeforeunload中加一个标记,在onunload中判断该标记,即可达到判断页面是否真的关闭了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: