10 Stimmen

Was ist der Vorteil der Verwendung von unescape auf document.write zum Laden von Javascript?

Der Code, den Sie hinzufügen müssen, um eine Webseite mit Google Analytics zu verfolgen, sieht so aus:

<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-XXXXX");
pageTracker._trackPageview();
} catch(err) {}</script>

Was ist der Vorteil, wenn man diese Linie macht?

document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

gegen diese Linie:

document.write("<script src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'><\/script>");

Ich habe einen Code geschrieben, der etwas Ähnliches tut (javascript "via" document write laden), aber er verwendet kein unescape und ich frage mich, ob ich dem google-analytics Beispiel folgen sollte.

14voto

Greg Punkte 306033

Das bedeutet, dass der Code in XML / XHTML und HTML funktionieren wird, ohne dass man sich mit CDATA herumschlagen muss.

1 Stimmen

Wäre es in Ordnung, document.write(") zu verwenden? \x3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript' \x3E\x3C /script \x3E ");

0voto

Amber Punkte 473552

Ein Vorteil ist, dass Sie sich keine Sorgen machen müssen, dass Anführungszeichen im geladenen Skript die Anführungszeichen in Ihrem Skript beeinträchtigen könnten (da die Anführungszeichen im geladenen Skript escaped werden können).

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X