windows无提示关闭页面

  今天碰到个问题,需要自动关闭网页,网上找了方法,一直在火狐测试,一直没反应,还以为写错了,后来发现用火狐需要进行设置(后文有提供方法),IE可正常使用。。。

下面提供部分代码:

  需要自动关闭网页,可以用下面的代码:

1 <input type="button" onclick="clickWindow()" value="click" />
2 
3  <script language="JavaScript" type="text/javascript">
4         function closeWindow()
5         {
6          window.close();
7         }
8  </script> 

  但是这样,会弹出是否关闭窗口的对话框,若不需要此对话框,可按如下来做:

 1 <input type="button" onclick="closeWindow()" value="click" />
 2 
 3   <script language="JavaScript" type="text/javascript">
 4          function closeWindow()
 5          {
 6            window.opener=null;
 7           window.open('', '_self', '');
 8            window.close();
 9          }
10    </script> 

  这样就可以自动关闭窗口了。如果需要定时关闭,可以配合setTimeout计时:

1 <input type="button" onclick="closeWindow()" value="click" />
2 
3 <script>
4     var closeWindow=function(){
5         window.opener=null;
6             window.open('', '_self', '');
7             setTimeout('window.close()',1000);
8     }
9 </script>    

  点击按钮后,窗口将在1s后无提示自动关闭。

  在页面提示,倒计时20s后自动关闭:

1 <div class="time" style="background: #eee;100px;height:50px"></div>
 1 function countDown(){
 2     var time = 20;
 3     closeWindow();
 4     function closeWindow(){
 5         setTimeout(closeWindow,1000);
 6         if(time>0){
 7             $('.time').html(time);
 8             //console.log(time);
 9             time--;
10         }else{
11             window.opener = null;
12             window.open('', '_self', '');
13             window.close();
14         }
15     }
16 }

  

  以上自动关闭的代码,IE可正常运行,如果你使用的是firefox浏览器必须要做以下设置
    1、在地址栏输入about:config然后回车,警告确认
    2、在过滤器中输入”dom.allow_scripts_to_close_windows“,双击即可将此值设为true
  即可完成了。

  兼容性良好的代码参考(仅参考,未测试):

  http://www.jb51.net/article/20092.htm

原文地址:https://www.cnblogs.com/ethy/p/4422568.html