javascript - 谷歌分析 : Uncaught ReferenceError: _gat is not defined

标签 javascript google-analytics analytics

页面加载时出现“_gat未定义”错误

尝试了来自:Uncaught ReferenceError: _gaq is not defined (Google Analytics)的建议但没有帮助。

这是我的初始代码片段:

(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);
})(); 

var pageTracker pageTracker = _gat._createTracker('UA-xxxxxxxx-1'); 

<button onclick="pageTracker._setCustomVar(1,'customvar1', 'value', 3); 
pageTracker._trackPageview();">Fire</button>            

最佳答案

这是解决方案(添加延迟):

(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);
})(); 

var pageTracker; 
setTimeout(function(){
    pageTracker = _gat._createTracker('UA-xxxxxxxx-1'); 
    pageTracker._initData(); 
}, 1000); 

<button onclick="pageTracker._setCustomVar(1,'customvar1', 'value', 3); 
pageTracker._trackPageview();">Fire</button>        

在我的测试中,我发现 1 秒是一个很好的延迟时间 - 任何小于 1 秒的时间都更有可能产生 _gat undefined 错误。

关于javascript - 谷歌分析 : Uncaught ReferenceError: _gat is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23731864/

相关文章:

analytics - 我的网页内的用户行为

python - 如何解决mysql每日分析在日期变化时发生的问题

javascript - 完整日历未显示在 Bootstrap 模式中

javascript - JS中多个项目的运行函数

javascript - 如何使用 Javascript 不循环 JSON 中已有的键

url - URL 中的 UTM 标签和 anchor

javascript - 重写主干模型中的 fetch() 方法

ajax - 将事件或虚拟综合浏览量用于Google Analytics(分析)和Ajax

url - 列出所有具有占位符图片的产品

google-analytics - 跟踪谷歌分析中的特殊日子