首頁 >web前端 >js教程 >如何在沒有 Flash 的情況下從 JavaScript 在後台開啟新分頁?

如何在沒有 Flash 的情況下從 JavaScript 在後台開啟新分頁?

Barbara Streisand
Barbara Streisand原創
2024-11-07 14:47:02859瀏覽

How Can I Open a New Tab in the Background from JavaScript Without a Flash?

我可以在保留目前分頁的同時在後台開啟新分頁嗎?

使用JavaScript 時,可以開啟使用下列程式碼在不同分頁中建立新頁面,同時將注意力集中在目前分頁上:

open('http://example.com/');
focus();

但是,這種方法可能會導致新選項卡在切換回Chrome 中的目前標籤之前短暫閃爍。為了避免這個問題,需要一種更複雜的方法。

解決方案:模擬按鍵事件

此解決方案涉及模擬鍵盤上的組合鍵(例如Ctrl 點擊)動態產生的元素來建立背景選項卡。以下程式碼完成此操作:

function openNewBackgroundTab(){
    var a = document.createElement("a");
    a.href = "http://www.google.com/";
    var evt = document.createEvent("MouseEvents");
    // Simulate Ctrl key press
    evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, true, false, false, false, 0, null);
    a.dispatchEvent(evt);
}

此方法透過建立一個 來運作。元素,將其 href 屬性設為所需的 URL,然後使用模擬的「Ctrl」鍵調度點擊事件。這會導致開啟後台選項卡而不影響目前選項卡的焦點。

以上是如何在沒有 Flash 的情況下從 JavaScript 在後台開啟新分頁?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn