Ö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); }
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!