获取最外层窗体

场景:有的时候点击了很多操作,比如打开了几层弹窗(window.open()方式),网页本身可能嵌套在了iframe中,如果登陆超时,在进行操作时要使最外层网页返回登陆页,并关闭所有已打开的弹窗。那么首先就要获取最外层的窗体。
方法如下:

function toLogin(){
var topWin = getTopWin(window);
topWin.location.href = "login.jsp";
}
function getTopWin(obj){
var op = obj.opener;
var pr = obj.parent;
if(op){
obj.close();
return getTopWin(op);
}else if(pr&&pr!=obj){
return getTopWin(pr);
}else {
return obj;
}
}

你可能感兴趣的:(javascript)