Javascript确定一个网页是否关闭或刷新。

Javascript确定一个网页是否关闭或刷新。
其原理是由离开页面动作时间和onunload触发时间检测浏览器窗口的大小,根据大小,这是判断用户是清新的,跳跃或关闭程序的行为。

代码如下
window.onunload =函数(){
无功a_n = window.event.screenx - window.screenleft;
无功a_b = a_n > document.documentelement.scrollwidth-20;
如果(a_b窗口。事件。clienty<0 | | {窗口。事件。altkey)
警报('closing页面行为);
其他{ }
警报('jump或刷新页面行为);
}
}
它在浏览器右上角的关闭按钮上工作得很好,但它在选项卡上关闭,并在任务栏上关闭。这个方法不起作用

JS标签只有一个onloadonunloadonbeforeunload事件,没有事件OnClose。

无论是关闭页面或刷新,onunload事件被执行

如何捕获页面关闭

只会被执行,当页面加载

只有卸载文件时执行关闭页面

当页面被刷新,在onbeforeunload被执行,然后卸载文件,最后加载。

这样,我们可以添加一个标签的onbeforeunload判断标签在onunload判断页面是否真的关闭。

更完整的FF兼容性

代码如下
<!——
功能关闭(EVT) / /作者:孙磊
{
无功议=文件。这一切听起来不错:假;
EVT = EVT EVT:(window.event window.event:空);
如果(议){ / / IE浏览器
var n = evt.screenx - window.screenleft;
var b = n>document.documentelement.scrollwidth-20;
如果(b值。clienty<0 evt.altkey | |){
警报()是关闭的,而不是刷新;
窗口的位置。href = 。 /包括/糊涂人。PHP ;
}
别的{
警报()刷新,而不是关闭;
返回false;
}
}
其他浏览器
如果(document.documentelement.scrollwidth!= 0)
{
警报()刷新,而不是关闭;
/ /窗口。位置。href =report_list。phpss = 1 ;
返回false;

}
别的{
警报()是关闭的,而不是刷新;
/ /窗口。位置。href =repost_list。phpss = 0 ;
/ /警报(bbbbbbb );
}
}
}

上述方法不能用来判断多标签的浏览器,如360,IE8。

代码如下
功能closeopen(事件){
如果(事件。ClientX <= 0 | |事件。clienty<0){
获取当前时间
日期=新日期();
最后一次设置日期
警报(关闭网页);
Date.setTime(date.gettime)-(10000);
cookie userid / /删除
文件。饼干=庄陶;到期=+ date.toutcstring();
文件。饼干=quanxianzifucuan;到期=+ date.toutcstring();
文件。饼干=全现;到期=+ date.toutcstring();
关闭窗口!;;SW=1;
Onbeforeunload();
/ / window.event.returnvalue =关闭浏览器将退出系统
}
其他的
{
警报(刷新或离开);
}
}

无功currentkeycode = - 1;

功能(文件。onkeydown){ / /窗口所有下属页必须包含的功能

top.currentkeycode =的情况下;
}

功能onbeforeunload(){

var = 0;
如果(currentkeycode = 116)
{
刷新窗口!(F5);
}
其他的
{
如果((事件。altkey)(currentkeycode = = 115))
{
关闭窗口!(Alt + F4);SW = 1;
获取当前时间
日期=新日期();
最后一次设置日期
警报(关闭窗口);
Date.setTime(date.gettime)-(10000);
cookie userid / /删除
文件。饼干=庄陶;到期=+ date.toutcstring();
文件。饼干=quanxianzifucuan;到期=+ date.toutcstring();
文件。饼干=全现;到期=+ date.toutcstring();
}
其他的
{
如果((event.clientx > 0)(event.clientx <文件。身体。clientwidth))
{
刷新窗口!;
}
其他的
{
获取当前时间
日期=新日期();
最后一次设置日期
警报(关闭网页);
Date.setTime(date.gettime)-(10000);
cookie userid / /删除
文件。饼干=庄陶;到期=+ date.toutcstring();
文件。饼干=quanxianzifucuan;到期=+ date.toutcstring();
文件。饼干=全现;到期=+ date.toutcstring();
关闭窗口!;;SW=1;
}
}
}
如果(SW = 1)
{
event.returnvalue = ;
}
其他的
{
currentkeycode = - 1;
}

}

以上仅不能在任务栏中使用,基本上可以满足我们的要求。

这是本文的内容,是介绍给你的javascript判断页面是关闭还是刷新,希望大家喜欢。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部