我正在尝试打开一个新窗口,代码如下:
$('#wrapper').click(function() {
window.setTimeout(function() {
//alert('hi');
window.open("http://example.com", "ExternalLinks", "resizable=yes, scrollbars=yes, status=yes");
}, 1000);
});
这在Firefox中有效,但在Chrome或Safari中不起作用(到目前为止,我只在Mac上进行了测试)。alert()
在所有浏览器中都有效,因此似乎有些东西阻止了在Safari / Chrome中执行window.open
。此外,如果我删除setTimeout
并仅调用window.open
,那么在所有3个浏览器中都可以工作。就像如果window.open
与click
事件相距太远,则在Safari / Chrome中它就无法正常工作。
所以,你知道,我拥有一个全Flash网站,我试图使外部链接在新窗口中打开,因此我正在读取URL中的哈希标签(例如htp://example.com/#/facebook/),如果匹配某些项目,则调用window.open
打开特定的URL。我无法访问Flash源文件,否则我会在那里处理此操作。
有任何想法吗?