2011-09-26 45 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();  
}) 
相關問題