Heim > Web-Frontend > js-Tutorial > Warum teilen einige Websites „'- und „'-Tags mit „document.write()' auf?

Warum teilen einige Websites „'- und „'-Tags mit „document.write()' auf?

Patricia Arquette
Freigeben: 2024-12-12 12:53:12
Original
626 Leute haben es durchsucht

Why Do Some Websites Split `` and `` Tags with `document.write()`?

Document.write() und Skript-Tag-Aufteilung: Warum es gemacht wird

Bei Verwendung der document.write()-Methode zum Erstellen eines Skripts Möglicherweise stellen Sie fest, dass einige Websites das <script>-Tag trennen. und </script> Tags über mehrere Anrufe hinweg. Diese Technik wird aus einem bestimmten Grund eingesetzt: um eine vorzeitige Beendigung des Skriptblocks zu vermeiden.

Browser analysieren HTML normalerweise mithilfe von SGML-Regeln. Laut SGML sollten Skriptblöcke mit jeder End-Tag-Open-Sequenz (ETAGO) enden, z. B. <[/). In der Praxis beenden Browser das Parsen eines CDATA-Skriptblocks jedoch erst auf einem richtigen Tag schließen.

Daher wird einschließlich des vollständigen <script> und </script> Tags innerhalb eines einzelnen document.write()-Aufrufs würden dazu führen, dass der Browser den Skriptblock vorzeitig beendet, wenn er auf die

Um dieses Problem zu verhindern, stellt die Aufteilung der Tags sicher, dass die Der Browser interpretiert das Skript korrekt und führt es aus. Die Aufteilung kann zwischen < und /, sodass der Skriptblock nur dann ordnungsgemäß beendet werden kann, wenn der vollständige Die Sequenz wird geschrieben.

Eine bessere Alternative zur Verwendung dieser Aufteilungstechnik besteht darin, alle < oder &-Zeichen im Skript und erstellen Sie das Skriptelement wie folgt:

document.write('\x3Cscript type="text/javascript" src="foo.js">\x3C/script>');

Dieser Ansatz funktioniert sowohl für HTML5- als auch für XHTML-Dokumente, wodurch Kreuzkompatibilität gewährleistet und Browserverwirrung vermieden wird.

Das obige ist der detaillierte Inhalt vonWarum teilen einige Websites „'- und „'-Tags mit „document.write()' auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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