Qual é a vantagem de usar unescape em document.write para javascript carga?
-
22-07-2019 - |
Pergunta
O código que você tem que adicionar para rastrear uma página web com o Google Analytics parece com:
<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>
Qual é a vantagem de fazer essa linha:
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
contra estes a linha:
document.write("<script src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'><\/script>");
Eu escrevi algum código que faz algo semelhante (javascript carga "via" write documento), mas ele não usa unescape e eu estou querendo saber se eu deveria seguir o exemplo google-analytics.
Solução
Isso significa que o código irá funcionar em XML / XHTML e HTML sem ter que mexer com CDATA
Outras dicas
Bem, uma vantagem é que isso significa que você não precisa se preocupar com citações dentro do script que está sendo carregado interferir com citações em seu script que está fazendo o carregamento (uma vez que os do roteiro carregado pode ser escapado).