2010-11-22 109 views
6

我想確保在所有啓用tab的瀏覽器中,當用戶單擊鏈接時,它會在新選項卡中打開。我到目前爲止所獲得的只是錨點中的target關鍵字,但是是否有一些支持該功能的新html屬性?如何強制使用javascript在新選項卡中打開鏈接

+0

而'target =「_ blank」'不適合你? – Alex 2010-11-22 09:41:44

+2

mm很好的問題,但我不認爲你的問題有一個解決方案。在某些瀏覽器中,target =「_ blank」會打開一個新窗口,我猜 – Michel 2010-11-22 09:41:56

+0

我認爲這也取決於您的瀏覽器設置。在FF中,您可以選擇是否在新選項卡或窗口中打開頁面。其他瀏覽器必須具有相同的設置。但不幸的是,他們不能在JavaScript中管理。 – 2010-11-22 09:46:23

回答

5

因爲您可以從瀏覽器選項中更改窗口打開行爲和選項卡選項,所以沒有保證的方法。

您可以做的最好的方法是使用target="_blank"window.open()編寫代碼。

+2

你的意思是「你能做的最好的」嗎? :-) – MaxVT 2010-11-22 09:47:48

+0

或者「你能做的最多」。 – 2010-11-22 09:48:55

+0

@MaxVT,@ T.J。克勞德:哦,我說的是相反的。更正,謝謝你們:) – Sarfraz 2010-11-22 10:30:50

1

你最好打賭是<a href="..." target="_blank"></a>

沒有標準化的語義方式告訴瀏覽器打開一個新標籤頁。這是因爲並非所有的瀏覽器都有標籤。以大多數移動瀏覽器爲例,他們沒有標籤。

也沒有供應商的具體做法,我知道。

1

不,沒有HTML屬性會告訴啓用tab的瀏覽器如果可以這樣做,那麼如果您想重新使用一個窗口,您會被鎖定爲target使用「_blank」作爲新窗口或特定名稱。它肯定會很好,但目前的HTML5工作草案中甚至沒有任何內容,至少不在atarget(例如,「新標籤」沒有"context name")。

編輯:但是look at(和投票)Dr.Molle's answer。 CSS來救援(某天)!

3

有一個CSS3屬性target-new

遺憾的是它不被任何瀏覽器(我不知道任何)被支持。但是,也許你已經可以實施它以備將來使用。

相關問題