Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Membuka Tab Baharu di Latar Belakang Tanpa Menukar Fokus?

Bagaimana untuk Membuka Tab Baharu di Latar Belakang Tanpa Menukar Fokus?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-10 00:26:02856semak imbas

How to Open a New Tab in the Background Without Switching Focus?

Membuka Tab Baharu dalam Latar Belakang tanpa Menukar Fokus

Dalam soalan ini, pengguna berusaha untuk membuka tab baharu dalam tab berasingan tanpa menyebabkan sebarang peralihan fokus ke tab baharu. Mereka menunjukkan percubaan menggunakan kaedah open() dan focus(), tetapi menemui kilat seketika tab baharu sebelum kembali ke tab semasa dalam Chrome.

Walau bagaimanapun, jawapan yang disediakan memberikan penyelesaian alternatif menggunakan acara simulasi untuk memintas isu ini.

Penghantaran Acara Tersuai

Kunci untuk mencapai tingkah laku ini terletak pada mencipta elemen dan memberikan atribut hrefnya kepada URL yang dikehendaki. Selepas itu, peristiwa (dalam kes ini, klik tetikus) dicipta dan dimulakan dengan parameter tertentu, termasuk pengubah suai kunci "ctrl". Ini mencontohi tindakan menahan kekunci "ctrl" sambil mengklik pada pautan, yang merupakan tingkah laku lalai untuk membuka tab baharu di latar belakang.

Pelaksanaan

Kod yang disediakan menunjukkan ini teknik:

function openNewBackgroundTab(){
    var a = document.createElement("a");
    a.href = "http://www.google.com/";
    var evt = document.createEvent("MouseEvents");
    //the tenth parameter of initMouseEvent sets ctrl key
    evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0,
                                true, false, false, false, 0, null);
    a.dispatchEvent(evt);
}

Kesimpulan

Dengan memanfaatkan simulasi peristiwa, penyelesaian ini secara berkesan membuka tab baharu di latar belakang tanpa menjejaskan fokus tab semasa. Teknik ini amat berguna untuk sambungan penyemak imbas atau penanda halaman yang mengekalkan fokus pada tab semasa adalah penting untuk pengalaman pengguna yang lancar.

Atas ialah kandungan terperinci Bagaimana untuk Membuka Tab Baharu di Latar Belakang Tanpa Menukar Fokus?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn