关闭当前页所打开的全部窗口!

 
关闭当前所有打开的窗口,在论坛上经常有人问这种类似的问题,今天抽时间来全部解释一遍。
设计描述: 出现情况分为两种: 1、当打开的窗口为子窗口时,可以用以下方法:
 
  1. <script>
  2. var _aW=[];
  3. function fOpen()
  4. {
  5.     _aW[_aW.length]=window.open("http://blog.csdn.net/blueDestiny""","");
  6. }
  7. function fClose()
  8. {
  9.     for(var i=0; i<_aW.length; i++)
  10.     try {
  11.     window._aW[i].close();
  12.     } catch(e) { };
  13. }
  14. </script>
  15. <input type="button" value="open a new window" οnclick="fOpen()"><input type="button" value="close all" οnclick="fClose()">
2.当不是用window.open打开的子窗口时:需要适当做一些处理再加上上面我们写的代码,可以写出完整的关闭当前页所打开的全部窗口:示例代码:

 
  1. <a href="http://blog.csdn.net/blueDestiny" _fcksavedurl="http://blog.csdn.net/blueDestiny">blueDestiny(never-online)'s blog</a>
  2. <a href="javascript:οnclick=alert('javascript')" _fcksavedurl="javascript:οnclick=alert('javascript')">test javascript link</a>
  3. <a href="http://dev.csdn.net/" _fcksavedurl="http://dev.csdn.net/">dev csdn</a>
  4. <input type="button" value="close all" οnclick="fClose()">
  5. <script>
  6. var _aW=[];
  7. function fInitW()
  8. {
  9.     var aA=document.getElementsByTagName("A");
  10.     var aH;
  11.     for(var i=0;i<aA.length;i++)
  12.     {
  13.         try{ aH=aA[i].getAttribute("href") } catch(ex) {aH=null;};
  14.         if (aH && !(/javascript|jscript|vbscript|vbs|onclick/i).test(aH))
  15.         eval("aA[" + i + "].οnclick=function() {_aW[_aW.length]=window.open('" + aH + "', '', '');event.returnValue=false;}")
  16.         else
  17.         aH=null;
  18.     }
  19. }
  20. function fClose()
  21. {
  22.     for(var i=0; i<_aW.length; i++)
  23.     try {
  24.     window._aW[i].close();
  25.     } catch(e) { };
  26. }
  27. function fOpen()
  28. {
  29.     _aW[_aW.length]=window.open("http://blog.csdn.net/blueDestiny""","");
  30. }
  31. οnlοad=function(){fInitW();}
  32. </script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值