javascript如何捕获窗口关闭事件
程序员文章站
2022-03-08 11:21:33
...
javascript捕获窗口关闭事件的方法:1、用javascript重新定义【window.onbeforeunload()】事件;2、在body标签里加入onUnload事件。
本教程操作环境: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('','_self'); window.close(); } var i = 0; function dis() { if( i > time ) { Redirect(); } document.all.t.innerHTML = "还剩<span style='color:red'>" + (time - i) + "</span>秒,本页面将自动关闭"; i++; } timer = setInterval('dis()', 1000); //显示时间 timer = setTimeout('Redirect()', 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如何捕获窗口关闭事件的详细内容,更多请关注其它相关文章!
上一篇: mysql怎么添加列的数据
下一篇: mysql怎么分表
推荐阅读
-
360浏览器窗口拦截功能如何开启和关闭
-
JavaScript实现父子dom同时绑定两个点击事件,一个用捕获,一个用冒泡时执行顺序的方法
-
javascript事件捕获机制【深入分析IE和DOM中的事件模型】
-
JavaScript的闭包特性如何给循环中的对象添加事件(一)
-
360浏览器窗口拦截功能如何开启和关闭
-
一种在父窗口中得知window.open()出的子窗口关闭事件的方法
-
javaScript 事件绑定、事件冒泡、事件捕获和事件执行顺序整理总结
-
在MAC切换Finder时如何不关闭快速查看窗口
-
C#中窗口关闭时没有取消事件订阅导致事件重复执行的解决方法
-
笔记本电脑的合盖子事件(关闭盖子)如何设置?