BEARBEITEN:
Ich habe gelernt, dass die Verwendung eines anderen Werts als _blank
NICHT in mobilen Browsern funktioniert, um neue Fenster / Registerkarten zu öffnen.
Wenn Sie beispielsweise ein neues Fenster / eine neue Registerkarte öffnen müssen:
Dies funktioniert in allen Browsern, auch in mobilen Browsern :
target="_blank"
.Dies funktioniert nicht auf mobilen Browsern, aber es funktioniert auf Desktop - Browsern:
target="new"
.
- -
Obwohl ich diesen hier habe, bin ich mir nicht sicher, ob es einen besseren Weg gibt, oder ob der Weg, den ich bekommen habe, der richtige / einzige Weg ist.
Grundsätzlich ersetze ich alle target="_new"
oder target="_blank"
Attributwerte durch target="nw"
. Auf diese Weise wird nur ein neues Fenster geöffnet und darin werden alle anderen neuen Fenster geöffnet, um den Benutzer nicht mit mehreren Fenstern zu überfordern.
Ich füge auch ein Attribut " In einem neuen Fenster öffnen " hinzu title=""
.
Die Lösung, die ich erstellt habe, ist folgende:
$("a[target='_blank'], a[target='_new']").attr('target','nw').attr('title','Opens in a new window');
Beachten Sie die beiden .attr();
Methoden.
Ist dies der richtige Weg, um einem Element zwei Attribute hinzuzufügen?
Ich habe es versucht, .attr('target','nw','title','Opens in a new window')
aber es hat nicht funktioniert.
Der Grund, den ich frage, ist das DYR-Prinzip (Don't Repeat Yourself). Wenn ich also meinen Code verbessern kann, großartig, wenn nicht, dann ist es das, was es ist.
Vielen Dank.
.attr('a,b','value')
es nicht funktioniert. Ich habe mich.attr('a',1).attr('b',1)
auch entschieden. Weniger auf neue Fenster angewiesen zu sein, könnte ein anderer Ansatz sein, in Ihrem Fall jedoch @ricardozea: PAntworten:
Sollte arbeiten:
Hinweis :
Aus der jQuery-Dokumentation (Sep 2016) für .attr :
Bearbeiten :
Zum späteren Nachschlagen ... Um ein einzelnes Attribut zu erhalten, würden Sie verwenden
Um ein einzelnes Attribut festzulegen, würden Sie verwenden
Um mehrere Attribute festzulegen, müssen Sie alles in {...} einschließen.
Bearbeiten - Wenn Sie versuchen, das Attribut "Aktiviert" über ein Kontrollkästchen abzurufen / festzulegen ...
Sie müssen
prop()
ab jQuery 1.6+ verwendenAlso auf die geprüfte Status zu erhalten eine Checkbox, die Sie verwenden sollten:
Oder um das Kontrollkästchen als aktiviert oder deaktiviert zu aktivieren , sollten Sie Folgendes verwenden:
quelle
Der richtige Weg ist:
quelle
Wenn Sie wissen, was Bootstrap-Attribute dynamisch in das Ankertag einfügen sollen, hilft Ihnen dies sehr
quelle
Etwas wie das:
quelle
Verwenden Sie geschweifte Klammern und fügen Sie alle Attribute ein, die Sie hinzufügen möchten
Beispiel:
quelle
quelle