我正在尝试像这样打开一个新窗口:
$('#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()
所有浏览器中都有效,因此似乎有一些东西阻止了window.open
在 Safari/Chrome 中执行。此外,如果我删除setTimeout
并只调用 thewindow.open
那么它在所有 3 个浏览器中都可以工作。这几乎就像如果window.open
嵌套距离click
事件太远,那么它在 Safari/Chrome 中不起作用。
所以你知道,我有一个全 Flash 网站,我正在尝试让外部链接在新窗口中打开,所以我正在阅读 URL 中的井号标签(例如 htp://example.com/# /facebook/) 并且如果它匹配某些项目,那么我打电话window.open
来打开一个特定的 URL。我无权访问 Flash 源,否则我会在那里处理。
有任何想法吗?