Jquery 谷歌分析可以';t函数中的trackEvent

Jquery 谷歌分析可以';t函数中的trackEvent,jquery,google-analytics,Jquery,Google Analytics,我有一个基本的异步谷歌分析代码: var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-XXXXXX']); _gaq.push(['_trackPageview']); (function(){ var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = (

我有一个基本的异步谷歌分析代码:

var _gaq = _gaq || [];
    _gaq.push(['_setAccount', 'UA-XXXXXX']);
    _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); 
})();
与lower相比,我倾听一次点击,并希望通过分析跟踪它:

$('#content').on("click", "#btn", function(e) {
    var elem = $(this);
    this.form.target = '_self';
    _gaq.push(['_trackEvent', 'download', elem.text()]);
    return true;
});
点击被触发,我可以看到\u gaq被定义
但不知何故,这一事件从未被追踪?
我读了
和不同的堆栈溢出答案,
但我没有找到我缺少的东西…


我找到的所有示例都使用OnClick将代码直接放在元素上。这是强制性的还是我可以像以前一样将代码放入函数中?

\u trackEvent
通过从Google Analytics服务器请求跟踪像素来记录数据,并将数据作为请求中的参数。如果浏览器开始处理新页面(因为跟随链接或提交表单),则可以取消图像请求,并且不会记录数据

Google的beta Universal Analytics(Analytics.js)允许使用数据发送时执行的
hitCallback
函数

使用ga.js的通常模式是在跟踪链接或提交表单之前添加一点延迟(150ms)

试试像这样的东西

$('#content').on("click", "#btn", function(e) {
  var elem = $(this);
  _gaq.push(['_trackEvent', 'download', elem.text()]);
  var form = this.form;
  form.target = '_self';
  setTimeout(function(){ form.submit(); }, 150);
  e.preventDefault();

}))

Thx,恭喜你的4k!