我正在使用window.open
创建一个弹出窗口,opener
稍后可以通过调用close()
来关闭,而问题是当弹出窗口导航到不同的网址,然后close()
将无能为力。
我正在使用IE9。
我用来测试的代码是:
var popup = window.open($(this).attr("href"), "Popup", "width=550,height=300,toolbar=0,scrollbars=0,status=0,resizable=0,location=0,menuBar=0");
setTimeout(function () {
popup.close();
}, 1000);
如果弹出窗口没有导航到另一个网址,它会关闭,但如果确实如此,它就不会关闭......
谢谢!
答案 0 :(得分:2)
这是一项与单一来源政策相关的安全功能。一旦opener和openee的域不再匹配,浏览器就会阻止close
之类的工作。这只是生活中的事实,而且这使得整个网络成为一个不那么烦人的地方(至少从安全角度来看)。