在webapp中集成Google Analytics(分析):无法记录用户交互

问题描述:

我已经使用backbone.js创建了一个Web应用程序,我正在尝试将Google Analytics(分析)集成到它中。事情是脚本执行总是停在ga.js内的某个点上。其中停止执行的代码是这样的(美化版)...在webapp中集成Google Analytics(分析):无法记录用户交互

var o = e == "_gat" ? K : e == "_gaq" ? Tc : K.p(e); 
o[f].apply(o, b[d][ha](1)) 

缩小的版本(21号线)

new ActiveXObject(d),e=c.GetVariable("$version")}catch(o){}e&&(e=e[w](" ")[1][w](","),e=e[0]+"."+e[1]+" r"+e[2])}b=e?e:"-"}Pc=b; 

我记录这样的事件:

_gaq.push('_trackEvent', '[header] login', 'click'); 

我看到代码在Firebug脚本选项卡中的上方停止。如果我禁用调试,则不会进行谷歌分析请求。该应用程序工作正常。

这里可能会出现什么问题?有其他人遇到过这样的问题。

UPDATE

好像这个问题是不相关的Backbone.js的。即使是像这样创建了最简单的页面也带来了同样的问题。我检查了Firebug中的Net标签 - __utm.gif确实加载。 ga.js也加载成功。但再次按下按钮也会产生相同的中断。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
    <head> 
     <title></title> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <script type="text/javascript"> 
      var _gaq = _gaq || []; 
      _gaq.push(['_setAccount', 'XX-XXXXXX-XX']); 
      _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"> 
      function check() { 
       alert("hi"); 
       _gaq.push('_trackEvent', 'check'); 
      } 
     </script> 
    </head> 
    <body> 
     <input type="button" value="abc" onclick="check();"/> 
    </body> 
</html> 

您正在调用_trackEvent错误。请注意,_trackEvent的前2个参数是必需的,最后2个参数是可选的。也应该在括号内。

检查功能的signature

你应该联系

_gaq.push(['_trackEvent', '[header] login', 'click']); 

_gaq.push(['_trackEvent', 'check', 'something else']);