Öffnen einer URL in einer neuen Registerkarte (und nicht in einem neuen Fenster) mit JavaScript

Ich versuche, eine URL in einer neuen Registerkarte zu öffnen, im Gegensatz zu einem Popup-Fenster.

Ich habe verwandte Fragen gesehen, bei denen die Antworten etwa so aussehen würden:

window.open(url,'_blank');
window.open(url);

Aber keine davon hat bei mir funktioniert, der Browser hat immer noch versucht, ein Popup-Fenster zu öffnen.

Lösung

Ein Autor kann sich nicht dafür entscheiden, die Seite in einer neuen Registerkarte statt in einem neuen Fenster zu öffnen; dies ist eine Benutzereinstellung.

CSS3 schlug target-new vor, aber die Spezifikation wurde aufgegeben.

Das Umgekehrte ist nicht wahr; durch die Angabe von Abmessungen für das Fenster im dritten Argument von window.open() können Sie ein neues Fenster auslösen, wenn die Präferenz für Tabs gilt.

Kommentare (31)

Um Steven Spielbergs Antwort weiter auszuführen, habe ich das in einem solchen Fall getan:

$('a').click(function() {
  $(this).attr('target', '_blank');
});

Kurz bevor der Browser dem Link folgt, setze ich das Zielattribut, so dass der Link in einem neuen Tab oder Fenster geöffnet wird (hängt von den Einstellungen des Benutzers ab).

Kommentare (1)

Ich denke, dass Sie dies nicht kontrollieren können. Wenn der Benutzer seinen Browser so eingestellt hat, dass Links in einem neuen Fenster geöffnet werden, können Sie nicht erzwingen, dass Links in einer neuen Registerkarte geöffnet werden.

https://stackoverflow.com/questions/726761/javascript-open-in-a-new-window-not-tab

Kommentare (0)