我正在尝试将google事件跟踪api实现为html5播放器,但由于某种原因它不想工作..这就是我正在做的事情:
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-myid-1']);
_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//u/ga_debug.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
if (typeof _gaq != undefined){
_gaq.push(['_trackEvent', 'krusty-player', eventName, 'demo', 1]);
}
我从谷歌文档页面复制了代码,所以我想它必须是正确的。在开发者控制台中,我没有看到代码运行时发生任何HTTP请求,但是当我这样做时:
console.log(_gaq.push(['_trackEvent', 'krusty-player', eventName]));
每次调用此部件时,我都会得到一个上升+1的计数器。这里没有错误..
我也尝试过使用:
_trackEvent('krusty-player', eventName);
返回错误“_trackEvent未定义”
知道发生了什么事吗?
答案 0 :(得分:7)
您是在localhost还是Intranet上进行测试?有关详细信息,请参阅Google Analytics GIF request not sent TLDR:默认情况下,不会为localhost服务器提供跟踪GIF请求。
关于_trackEvent is not defined
:_ trackEvent()不是一个独立的函数,需要通过_gaq.push调用
_gaq.push(['_trackEvent', category, action])
或通过pageTracker对象(旧式,非异步分析)
pageTracker._trackEvent(category, action)
答案 1 :(得分:1)
在事件上绑定_gaq.push
操作。
喜欢:
<span onClick="_gaq.push(['_trackEvent', EVENT_NAME, EVENT_ACTION, EVENT_DESCRIPTION]);">Click me</span>
使用普通/动态生成的文本重命名大写字母名称,它应该有用。