2012-04-29 108 views
0

對於某些瀏覽器(並取決於設置),與target =「_blank」的鏈接似乎在前臺打開,但對於其他許多瀏覽器似乎在後臺打開。有沒有辦法確保在前臺打開target = _blank鏈接?

在我的情況下,在前臺打開的是用戶打開鏈接時想要的內容,所以如果有方法可以確保這一點,那將會很不錯。有沒有辦法做到這一點?謝謝。

+0

Vlad - does [Sérgio](http://stackoverflow.com/users/383868/sergio-carvalho)下面的解決方案爲您解決它(它對我來說)嗎?如果是這樣,將其標記爲答案可能很有用。 – dumbledad

回答

1

您可以嘗試使用window.focus()將新窗口置於前面。你可以這樣做在打開的文檔,使用jQuery,有:

$(function() { 
    window.focus(); 
}); 

或原始文件:

var newWindow = window.open(url); 
window.setTimeout(function() { newWindow.focus(); }, 1000); 

需要的setTimeout的,以便有時間窗口被實際創建瀏覽器。可能有一個更清晰的方法來實現這一點,但setTimeout應該做到這一點。

+0

我已經制作了一個小書籤,用戶可以將其拖入他們的收藏夾欄並用於本質上書籤站點。我的代碼使用['window.open(...)'](http://developer.mozilla.org/en/DOM/window.open),但生成的新窗口會立即從瀏覽器的打開實例後面小書籤被點擊。儘管我沒有使用target =「_ blank」,但這與上面的@Vlad聲明的相同,Sergio的JavaScript解決方案已經修復了它。謝謝。 – dumbledad

2

沒有辦法確保這些鏈接在前臺打開。這是瀏覽器安排的內容,沒有什麼可以改變的。

但是,您可以通過忽略目標屬性在同一窗口中打開鏈接,以確保點擊該鏈接的用戶立即看到該頁面。在某種程度上,這也是「更好的」,因爲它讓用戶可以選擇在新窗口中打開鏈接。

相關問題