我正在尝试在新选项卡中打开 URL ,而不是弹出窗口。
我已经看到相关的问题,其中的响应看起来像:
window.open(url,'_blank');
window.open(url);
但是它们都不适合我,浏览器仍然试图打开一个弹出窗口。
原文由 Mark 发布,翻译遵循 CC BY-SA 4.0 许可协议
我正在尝试在新选项卡中打开 URL ,而不是弹出窗口。
我已经看到相关的问题,其中的响应看起来像:
window.open(url,'_blank');
window.open(url);
但是它们都不适合我,浏览器仍然试图打开一个弹出窗口。
原文由 Mark 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是一个技巧,
function openInNewTab(url) {
window.open(url, '_blank').focus();
}
// Or just
window.open(url, '_blank').focus();
在大多数情况下,这应该直接在 onclick
链接处理程序中发生,以防止弹出窗口阻止程序和默认的“新窗口”行为。你可以这样做,或者通过向你的 DOM
对象添加一个事件监听器。
<div onclick="openInNewTab('www.test.com');">Something To Click On</div>
参考: 使用 JavaScript 在新选项卡中打开 URL
原文由 Rinto George 发布,翻译遵循 CC BY-SA 4.0 许可协议
13 回答13k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
6 回答1.1k 阅读
作者无法选择在新选项卡而不是新窗口中打开;这是一个 _用户偏好_。 (请注意,大多数浏览器中的默认用户首选项是针对新选项卡的,因此在未更改该首选项的浏览器上进行的简单测试不会证明这一点。)
CSS3 提出了 target-new ,但 规范被放弃了。
反过来 是不正确的;通过在
window.open()
的第三个参数中为窗口指定某些窗口功能,您可以在偏好选项卡时触发一个新窗口。