您当前的位置: 首页 >  程序员一灯

[removed]window.close()不管用?

程序员一灯 发布时间:2019-05-17 19:09:17 ,浏览量:5

你一定试过网上千万中方法。例如类似这个网友的方式:http://blog.csdn.net/hantiannan/article/details/7402621

 

一般的窗口关闭的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,是为了防止脚本乱关窗口

其实还有一种原因就是你打开的是当前窗口,chrom、火狐还真就是管用,这时候你可以试试:window.history.back()

关注
打赏
查看更多评论

程序员一灯

暂无认证

  • 5浏览

    0关注

    109博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录