Javascript:window.close()不起作用?


一般的窗口關閉的JS如下寫法:

    window.close()

 

但是呢,chrome,firefox等中有時候會不起作用。

改為下面的寫法:

    window.open("about:blank","_self").close()   

   或者

   window.open("","_self").close()  

 

如果是frame的時候如下寫法:

   一般:window.top.close()

   改善:window.open("about:blank","_top").close()   或者 window.open("","_top").close()

 

其他比如window.parent.close()也是可以用類似的方法。

 

如果關閉按鈕既可能是單獨的畫面,也可能是frame的一部分的時候,可以用下面的寫法對應。

function closeWin() {
   try {
       window.opener = window;
       var win = window.open("","_self");
       win.close();
       //frame的時候
       top.close();
   } catch (e) {

   }
}

 

 

下面是網上比較受歡迎的文章:

function logout(){
        if(confirm("確定要退出嗎?")){
                 var browserName=navigator.appName;
                 if (browserName=="Netscape"){
                       window.open('', '_self', '');
                       window.close();
                 }
                 if (browserName=="Microsoft Internet Explorer") {
                       window.parent.opener = "whocares";
                       window.parent.close();
                 }
        }
}

FireFox需要設置:
在Firefox地址欄里輸入 about:config
在配置列表中找到 dom.allow_scripts_to_close_windows
點右鍵的選切換把上面的false修改為true即可。
注:默認是false,是為了防止腳本亂關窗口


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM