我已将以下代码添加到我的JS中以跟踪按钮点击:
_gaq.push(['_trackEvent', 'category', 'action', 'label']);
我使用Chrome开发工具点击了它的断点,_gaq肯定会解析为GA对象,我甚至可以进入GA.js代码中的(缩小的)推送事件。然而,即使这没有错误,我也没有看到Fiddler / firebug / Chrome中记录任何GET或POST,也没有记录我的分析。 正常页面分析对我来说很好,跟随在页面底部运行:
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'XXXXXXXXX']);
_gaq.push(['_setDomainName', '.Domain.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>
任何人都有任何想法为什么上面的代码不起作用?
答案 0 :(得分:2)
一个常见的原因是错误的参数类型(在这种情况下GA无声地失败)。
对于_trackEvent,参数必须为:
string
string
string
integer
在预期字符串时不要使用整数,反之亦然。
答案 1 :(得分:0)
根据我的理解,你在外部.js文件中有trackevent,而在<body>
- 标签底部调用标准脚本?
明显的解决方案是移动脚本:
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'XXXXXXXXX']);
_gaq.push(['_setDomainName', '.Domain.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>
在<head>
- 代码中向上,以及在此代码段下面调用外部js文件。
像:
<html>
<head>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'XXXXXXXXX']);
_gaq.push(['_setDomainName', '.Domain.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>
<script type="text/javascript" src="ext.js"></script>
</head>
<body>
</body>
答案 2 :(得分:0)
对我来说,这是一个非常愚蠢的错误。我在GA中过滤了自己的IP。
想象一下可能对某人有帮助!