在IE9上,Win 7 window.open()返回null而不是打开窗口的引用

sra*_*ker 16 javascript browser internet-explorer-9

我正在尝试下面这样的事情,

var myWindow = null;
if(!myWindow || myWindow.closed)
{
    myWindow = window.open(url, windowId);
}
else 
{
    myWindow.focus();   
}
Run Code Online (Sandbox Code Playgroud)

所有浏览器都返回window.open()的窗口引用,但IE 9返回NULL.有没有人有更多关于为什么返回null的信息或可能是IE9的解决方案?

sra*_*ker 28

window.open如果在此区域的"Internet选项 - >安全性 - >安全级别"下选中" 启用保护模式",则返回NULL引用对象,并且ZONE不同,即在我的情况下本地文件从Intranet打开弹出窗口.

window.open即使在mysite.com在弹出窗口中打开someothersite.com即Internet-> Internet时选中了启用保护模式,也会返回参考对象


Ove*_*ous 5

出于好奇,你的是什么windowId?它有空间吗?

因为,如果窗口标题中有空格,显然IE9将失败.