Jef*_*eff 7 javascript google-analytics
刚下载我的JavaScript训练轮.
为什么谷歌选择unescape了document.write行于第1部分下面?
他们为什么不这样写呢?unescape某些较旧的浏览器兼容性可能需要?
document.write('<script src="'
+ gaJsHost
+ 'google-analytics.com/ga.js" type="text/javascript"></script>');
Run Code Online (Sandbox Code Playgroud)
作为参考,整个Google Analytics跟踪代码如下所示:
第1部分:
<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>
Run Code Online (Sandbox Code Playgroud)
第2部分:
<script type="text/javascript">
try
{
var pageTracker = _gat._getTracker("UA-0000000-0");
pageTracker._trackPageview();
}
catch(err){}
</script>
Run Code Online (Sandbox Code Playgroud)
我理解其余代码的作用,只是对unescape部分感到好奇.
编辑
底线unescape是必需的.投票结束这个问题因为它是重复的(见答案标记正确).
这意味着代码将以XML/XHTML和HTML工作,而不必弄乱CDATA
请参阅:https: //stackoverflow.com/questions/1224670/what-is-the-advantage-of-using-unescape-on-document-write-to-load-javascript