在IE8中更改开启窗口的地址

时间:2009-10-22 14:28:24

标签: javascript html popup browser

从子弹出窗口(使用window.open打开),我试图更改打开我的窗口的URL,例如。

window.opener.location.href ='http://www.google.com';

在所有浏览器中,除了IE8之外,它的效果非常好(我确信它在以前的IE8中有效。可能安全更新会导致这种情况发生。)

在IE8中,上面的行被视为打开一个带有地址的新窗口的请求,并且原始的开启窗口保持不变。而且,由于我没有将此行放在onclick事件中,因此将其视为弹出窗口。

那我该如何在IE8中这样做呢?如何更改开启者位置?

3 个答案:

答案 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);