从子弹出窗口(使用window.open打开),我试图更改打开我的窗口的URL,例如。
window.opener.location.href ='http://www.google.com';
在所有浏览器中,除了IE8之外,它的效果非常好(我确信它在以前的IE8中有效。可能安全更新会导致这种情况发生。)
在IE8中,上面的行被视为打开一个带有地址的新窗口的请求,并且原始的开启窗口保持不变。而且,由于我没有将此行放在onclick事件中,因此将其视为弹出窗口。
那我该如何在IE8中这样做呢?如何更改开启者位置?
答案 0 :(得分:1)
看起来这是不可能。我没有得到任何人的回答,我的所有研究表明这只是MS加入阻止弹出窗口的另一种方式。
答案 1 :(得分:1)
尝试将操作移动到父窗口中,如下所示:
//parent.htm
function changeUrl(url) {
location.href = url;
window.reload();
}
window.open("child.htm");
.....
//child.htm
window.opener.changeUrl(url);
答案 2 :(得分:0)
试试这个: 在开启窗口上定义一个名为goto的函数; - )
function goto(url){ window.location.href = url; }
现在从子窗口调用window.opener.goto(url);