最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript在當前窗口關閉前檢測窗口是否關閉

 更新時間:2014年09月29日 17:03:13   投稿:whsnow  
檢測窗口是否關閉,在當前窗口關閉前使用js做到這一點,下面是具體的實現(xiàn),感興趣的朋友可以參考下

在當前窗口關閉前,檢測當前窗口是否關閉

<pre name="code" class="html"><pre name="code" class="html"><HTML><HEAD> 
<script Language="JavaScript"> 
window.onbeforeunload=function(event){ 
alert("222"); //這里IE9會執(zhí)行,CHROME不會執(zhí)行 
// if(event.clientX>document.body.clientWidth && event.clientY<0||event.altKey){ //如果是刷新,則不提示 
RETURN "確定關閉窗口?"; 
// } 
} 
var aa ; 
var intervalVar; 
function showClose(){ 
console.log(" wait and val is :"+aa.closed); 
clearInterval(intervalVar); 
} 
function loadform(){ 
aa=window.open('foo.html', 'windowName',"width=200,height=200,scrollbars=no"); 
console.log("check close before op and val is :"+aa.closed); //現(xiàn)在窗口未關閉,結(jié)果為false 
aa.close();<span style="white-space:pre"> </span> //調(diào)用窗口關閉的方法 
console.log("not in wait and val is :"+aa.closed); //此時aa.close正在調(diào)用過程中,結(jié)果為false 
intervalVar = setInterval(showClose,100); }; //用循環(huán)檢測子窗口是否關閉,其實用setTimeout也是可以的,不過值要設得大一些 
function unloadform(){ alert("2!"); } 
</script> 
</HEAD><BODY OnLoad="loadform()" OnUnload="unloadform()"> 
</BODY></HTML>

在ie9中,如果刷新文檔的話,unloadform和onbeforeunload都會執(zhí)行,如果是關閉頁面的話只會執(zhí)行onbeforeunload事件

值得注意的是,onunload在關閉頁面時不會運行,估計此函數(shù)為瀏覽器內(nèi)置事件,不能重新定義

在chrome中,如果刷新文檔的話,unloadform和onbeforeunload都會執(zhí)行,關閉頁面的話,只會執(zhí)行onbeforeunload,值得注意的是有注釋的那一行一直不會執(zhí)行.

如果是window.open打開的子窗口的話,可以通過window.closed屬性檢測是否關閉

<HTML><HEAD> 
<script Language="JavaScript"> 
var aa ; 
var intervalVar; 
function showClose(){ 
console.log(" wait and val is :"+aa.closed); 
clearInterval(intervalVar); 
} 
function loadform(){ 
aa=window.open('foo.html', 'windowName',"width=200,height=200,scrollbars=no"); 
console.log("check close before op and val is :"+aa.closed); //現(xiàn)在窗口未關閉,結(jié)果為false 
aa.close(); //調(diào)用窗口關閉的方法 
console.log("not in wait and val is :"+aa.closed); //此時aa.close正在調(diào)用過程中,結(jié)果為false 
intervalVar = setInterval(showClose,100); }; //用循環(huán)檢測子窗口是否關閉,其實用setTimeout也是可以的,不過值要設得大一些 
function unloadform(){ alert("2!"); } 
</script> 
</HEAD><BODY OnLoad="loadform()" OnUnload="unloadform()"> <a href="test.htm">調(diào)用</a> 
</BODY></HTML>

父窗口關閉時會自動將window.open關閉的代碼

<HTML><HEAD> 
<script Language="JavaScript"> 
var aa ; 
var intervalVar; 
window.onbeforeunload=function(event){ 
aa.close(); 
return "hello"; 
} 
function loadform(){ 
aa=window.open('test.htm', 'windowName',"width=200,height=200,scrollbars=no"); 
}; 
function unloadform(){ alert("2!"); } 
</script> 
</HEAD><BODY OnLoad="loadform()" OnUnload="unloadform()"> <a href="test.htm">調(diào)用</a> 
</BODY></HTML>

相關文章

最新評論

阳西县| 云梦县| 深水埗区| 崇信县| 长春市| 横峰县| 铁力市| 乳源| 得荣县| 革吉县| 麻阳| 乐亭县| 合水县| 栖霞市| 南阳市| 定远县| 吴堡县| 晋江市| 涞水县| 屯留县| 龙游县| 漳浦县| 英吉沙县| 闽清县| 黔南| 呼伦贝尔市| 贵州省| 望都县| 保康县| 包头市| 上林县| 巴马| 巫溪县| 周宁县| 庆安县| 黎城县| 泸西县| 集安市| 饶阳县| 公主岭市| 宜川县|