在ASP页面中, 如何用javascript关闭由父窗口打开的弹出窗口;意思就是在关闭父窗口的同时把和该域名相关的弹出窗口都关闭? 请各位高手不吝赐教!!!
比如: http://test.com.cn/bin/default.asp 页面中打开aa.asp,bb.asp , 当default.asp的页面过了一定的时间后会自动跳转到系统登陆的页面 login.asp, 要求就是当default.asp页面跳转的之前,将 aa.asp,bb.asp先关闭。 如何用javascript 实现?
附上我的源代码:
<script language ="javascript">
window.document.body.onload= function(){doClose();};
function doClose()
{
var c=1;
setInterval("if(c--<=0){OpenRedirect()}",5000)
document.onmousemove=new Function("c=1");
document.onkeydown=new Function("c=1");
}
function OpenRedirect()
{
//要求在此加入代码,跳转之前关闭有default.asp页面打开的aa.asp .bb.asp
window.location.href="../../logout.asp";
}
</script>
------解决方案--------------------
<A HREF="#" onclick="pop=window.open('','','')">link</A>
<A HREF="#" onclick="if(pop&&!pop.closed)pop.close()">close</A>
原理:就是把打开窗口的句柄保存起来,就可以关闭了。
------解决方案--------------------
- HTML code
<script language ="javascript" > var childs = new Array(); function open1(){ var child = window.open('b.htm','',''); childs = childs.concat(child); } window.onunload=function(){ for(var i=0,j=childs.length;i<j;i++){ if(childs[i] != null && !childs[i].closed) childs[i].close(); } } </script > <input onclick="open1();" type='button' value='打开' />
------解决方案--------------------
- JScript code
<script language ="javascript" > var childs = new Array(); function open1(){ var child = window.open('b.htm','',''); childs = childs.concat(child); } window.onunload=function(){ for(var i=0,j=childs.length;i<j;i++){ if(childs[i] != null && !childs[i].closed) childs[i].close(); } } </script > <input onclick="open1();" type='button' value='打开' />