2011-09-26 42 views
70

我通过window.location将用户转移到某个网址,但此网址在浏览器中的相同选项卡中打开。我希望它在新标签中打开。我可以使用window.location吗?是否有另一种方法来执行此操作?在新选项卡中的javascript window.location

+2

Duplicate:http://stackoverflow.com/questions/427479/programmatically-open-new-pages-on-tabs – Samich

+0

是否需要window.location?还是可以提供其他JS解决方案? – Khez

+0

@Khez:可以提供其他的JS。 –

回答

13

我不认为有办法做到这一点,除非你正在编写浏览器扩展。您可以尝试使用window.open,并希望用户将其浏览器设置为在新选项卡中打开新窗口。

+1

我不确定这是否适用于Safari:/ –

+8

过时的答案,请参阅下面的user1450789答案。 – Paul

248
window.open('https://support.wwf.org.uk', '_blank'); 

第二个参数是什么使它在新窗口中打开。不要忘记阅读Jakob Nielsen's informative article :)

+4

这应该被标记为正确答案! –

+1

我同意!将其标记为正确答案! –

+1

你是对的兄弟! – 0bj3ct

4

这对我的作品在Chrome 53没有测试过其他地方:

function navigate(href, newTab) { 
    var a = document.createElement('a'); 
    a.href = href; 
    if (newTab) { 
     a.setAttribute('target', '_blank'); 
    } 
    a.click(); 
} 
1

与jQuery它更容易和Chrome的工作以及

$('#your-button').on('click', function(){ 
     $('<a href="https://www.some-page.com" target="blank"></a>')[0].click();  
}) 
相关问题