首頁 >web前端 >js教程 >javascript如何捕捉視窗關閉事件

javascript如何捕捉視窗關閉事件

coldplay.xixi
coldplay.xixi原創
2021-04-30 14:23:064352瀏覽

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn