谷歌浏览器禁止window.close的问题


当一个窗口不是通过window.open或者window.showModalDialog打开的时候,调用JS的window.close()

谷歌浏览器会提示如下警告,并拒绝执行

Scripts may close only the windows that were opened by it.

 

解决方法:(此方法无效

function closeWindow(){    
    var browserName=navigator.appName;    
    alert(browserName);    
    if (browserName=="Netscape") {    
        window.open('','_self','');    
        window.close();     
    } else {    
                window.close();    
    }  
}      

 

如果找到真正有用的我到时再更新,如果你们有解决方案,可以在下面评论。

 

20161201编辑

在chrome下这个问题由于安全校验的问题,基本无解,可以通过将浏览器的地址replace一个空白地址来替代

代码大概如下:

function closeWindow(){
    var browserName=navigator.appName;
    if (browserName=="Netscape") {
        location.replace("about:blank");
    } else {    
        window.close();
    }
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM