登录  /  注册
首页 > web前端 > js教程 > 正文

javascript如何捕获窗口关闭事件

coldplay.xixi
发布: 2021-04-30 14:23:06
原创
3866人浏览过

javascript捕获窗口关闭事件的方法:1、用javascript重新定义【window.onbeforeunload()】事件;2、在body标签里加入onunload事件。

javascript如何捕获窗口关闭事件

本教程操作环境:windows7系统、javascript1.8.5版,DELL G3电脑。

javascript捕获窗口关闭事件的方法:

1.用javascript重新定义 window.onbeforeunload() 事件 

在javascript里定义一个函数即可 

function window.onbeforeunload() { alert("关闭窗口")} 

alert()事件将会在关闭窗口前执行,你也可以用户决定是否关闭窗口 

function window.onbeforeunload() { 
if (event.clientX>document.body.clientWidth && event.clientY<0 ||event.altKey) 
window.event.returnValue="确定要退出本页吗?"; 
}
登录后复制

2.用onUnload方法

在body 标签里加入onUnload事件

body onUnload="myClose()"
登录后复制

然后在javascript里定义myClose()方法

但是onUnload方法是在关闭窗口之后执行,不是在关闭窗口之前执行,如果你想在关闭窗口之前做判断,请用第一种方法

以上两个方法要能够成功关闭窗口,则该窗口必须是独立的新窗口;如果是基于父窗口,那么是无法关闭的。

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>导出数据</title>
<script type="text/javascript">
if(top.location != self.location )
{
top.location = self.location;
}
 
var time = 5; //时间,秒
function Redirect() {
    //window.location = "http://www.cssue.com/";
    window.opener=null;
window.open(&#39;&#39;,&#39;_self&#39;);
window.close();
}
var i = 0;
function dis() {
if( i > time )
{
Redirect();
}
    document.all.t.innerHTML = "还剩<span style=&#39;color:red&#39;>" + (time - i) + "</span>秒,本页面将自动关闭";
    i++;
}
timer = setInterval(&#39;dis()&#39;, 1000); //显示时间
timer = setTimeout(&#39;Redirect()&#39;, time * 1000); //跳转
 
</script>
</head>
<body >
<div style="text-align:center;margin-top:5%">
<h1>
<div id="s">Sorry ! 您输入的信息在服务器中无法找到</div>
<div id="t"></div>
</h1>
</div>
</body>
</html>
登录后复制

相关免费学习推荐:javascript视频教程

以上就是javascript如何捕获窗口关闭事件的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号