Google Analytics中的异步跟踪代码如下所示:
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
Run Code Online (Sandbox Code Playgroud)
关于第一行:
var _gaq = _gaq || [];
Run Code Online (Sandbox Code Playgroud)
我认为它确保if _gaq已经定义,我们应该使用它,否则我们应该使用数组.
任何人都能解释这是为了什么吗?
此外,_gaq重命名是否重要?换句话说,Google Analytics是否依赖于名为_gaq?的全局对象?
我在IE7和IE8中发现_gaq是未定义的错误
我的剧本吼叫
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX']);
_gaq.push(['_setDomainName', 'yyy.com']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js?';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
Run Code Online (Sandbox Code Playgroud)
我可以为_gaq指定默认值吗? 请参阅此链接