Heim > Artikel > Web-Frontend > Die Webseite wird in einem neuen Fenster geöffnet. target=_blank entspricht nicht den Standards_Experience-Austausch
„Es gibt kein Attributziel für dieses Element (in dieser HTML-Version)“
Ursprünglich unter HTML4.01/XHTML1.0/XHTML1.1 strenger DOCTYPE, target="_blank", target="_self" Die Syntax ist ungültig und wir können sie nur über JavaScript implementieren.
Ein Freund fragte, warum target="_blank" nicht verwendet werden darf? Dieses Attribut ist sehr praktisch. Haha, ich weiß nicht, was die W3C-Experten denken. Soweit ich weiß, geht es hauptsächlich um „Benutzerfreundlichkeit und Freundlichkeit“, weil Ausländer es für unhöflich halten, ein neues Fenster ohne Zustimmung des Benutzers oder klare Aufforderungen zu öffnen. von. Unabhängig davon, ob diese Stornierung sinnvoll ist oder nicht, schauen wir uns die Lösung an.
rel-Attribut
HTML4.0 fügt ein neues Attribut hinzu: rel. Dieses Attribut wird verwendet, um die Beziehung zwischen dem Link und der Seite, die den Link enthält, sowie das Ziel der Linköffnung zu beschreiben. rel hat viele Attributwerte, wie z. B. „nächster“, „vorheriger“, „Kapitel“, „Abschnitt“ usw. Was wir verwenden möchten, ist das Attribut rel="external". Der Code, der ursprünglich so geschrieben wurde:
Neues Fenster öffnen
Jetzt sollte er so geschrieben sein: Neues Fenster öffnen
Dies ist eine strenge Standardmethode. Natürlich muss es mit einem Javascript kombiniert werden, um effektiv zu sein.
Javascript
Der vollständige Code JS lautet wie folgt:
function externallinks() {
if (!document.getElementsByTagName) return; (" a");
for (var i=0; i
Anchor.target = "_blank"; }
}
window.onload = externallinks
Sie können es als .js-Datei speichern (z. B. external.js) und es dann über die externe Verbindungsmethode aufrufen:
Das ist alles.
Schließlich ist das von meiner Website verwendete target="new" unter dem Übergangs-DOCTYPE zulässig, erfüllt jedoch nicht den strengen Standard. Ich werde in der nächsten Überarbeitung den strikten Modus verwenden und alle target="new" in rel="external" ändern.
Dieser Artikel bezieht sich auf die folgenden Artikel:
"New-Window links in a Standards-Compliant World" von Kevin Yank
"Standards-based Replacement for target="_blank" in Externe Links 》
Aktualisiert am 13.07.2006
Die Homepages vieler Portal-Websites sind meiner Meinung nach vorerst nicht zu ändern, zumindest in China Um rel unter jedem Link hinzuzufügen, lautet der vollständige Code wie folgt: