如何在新选项卡中打开URL而不是在新窗口中打开URL

时间:2015-04-01 06:36:40

标签: javascript popup-blocker

关于如何使用window.open()在新窗口中打开网址有很多答案,但这会打开一个弹出窗口,而这不是我需要的。
问题是:许多用户将其浏览器设置为阻止弹出窗口。另一方面,许多网站可以在当前窗口内打开新选项卡,避免弹出窗口阻止程序启动。

window.open('page.htm','_blank')  

触发弹出窗口阻止程序,

window.location.href='page.htm','_blank'  

在同一选项卡中打开URL,只是省略了'_blank'

所以这就是问题:
有没有办法告诉Javascript的行为就像普通链接中包含target='_blank'属性一样? 换句话说:
如何打开新的标签,最好是使用document.location.href
我强调我不想打开一个新的窗口,因为这会激活弹出窗口阻止程序。
我需要在当前窗口中添加一个新标签 同样,任何提出window.open()的答案对我来说都是无用的,所以请不要推荐任何打开新窗口的内容。

1 个答案:

答案 0 :(得分:2)

这可能有所帮助。

<div onclick="OpenNewTab('http://www.stackoverflow.com');">Click here to Open New Tab</div>

function OpenNewTab(url) {
  var newwindow = window.open(url, '_blank');
  newwindow .focus();
}

Working Fiddle