Heim > Web-Frontend > js-Tutorial > Wie öffne ich in Chrome einen neuen Tab im Hintergrund, ohne zu blinken?

Wie öffne ich in Chrome einen neuen Tab im Hintergrund, ohne zu blinken?

Mary-Kate Olsen
Freigeben: 2024-11-07 10:47:03
Original
924 Leute haben es durchsucht

How to Open a New Tab in the Background Without Flashing in Chrome?

Öffnen eines neuen Tabs im Hintergrund, ohne dass der Tab blinkt

In JavaScript das Öffnen einer neuen Seite in einem anderen Tab, während der Fokus auf dem bleibt aktuelle Registerkarte ist möglich. In Chrome kann dieser Vorgang jedoch dazu führen, dass der neue Tab kurzzeitig aufleuchtet, bevor wieder zum Original gewechselt wird. Dies kann unerwünscht sein.

Eine Problemumgehung für dieses Problem besteht darin, ein Tastaturereignis, z. B. das Drücken der „Strg“-Taste, auf einem dynamisch generierten Element mit der gewünschten URL zu simulieren. Dieser Ansatz simuliert das gleiche Verhalten wie das manuelle Öffnen einer neuen Registerkarte im Hintergrund.

Der folgende Code zeigt, wie dies erreicht wird:

function openNewBackgroundTab(){
    var a = document.createElement("a");
    a.href = "http://www.google.com/";
    var evt = document.createEvent("MouseEvents");
    // Set the tenth parameter of initMouseEvent to simulate the "Ctrl" key.
    evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, true, false, false, false, 0, null);
    a.dispatchEvent(evt);
}
Nach dem Login kopieren

Durch die Ausführung dieses Codes wird eine neue Registerkarte im Hintergrund erstellt geöffnet werden, ohne dass es zu einem störenden Blitz in Chrome kommt. Bitte beachten Sie, dass dieser Ansatz möglicherweise nicht in allen Browsern funktioniert, aber in der neuesten Version von Chrome erfolgreich getestet wurde.

Das obige ist der detaillierte Inhalt vonWie öffne ich in Chrome einen neuen Tab im Hintergrund, ohne zu blinken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage