2012-01-26 326 views
1

我有一个问题,我可以跟踪工作正常,但我似乎无法让事件工作。谷歌分析

我们有一个DNN网站,其中包含我们的在线会员服务,用户可以选择成为新会员,启动会员申请流程。这是为了使每个步骤所需的控件互换而编写的,因此对于所使用的7种不同控件,URL不会改变。这导致我们无法跟踪页面的问题。

因此,在那个一般背景下,我认为我们可以使用甚至跟踪。没有,也许我没有正确设置这个,所以这里是下面的代码。

<script type='text/javascript'> 
     var _gaq = _gaq || []; 
     _gaq.push(['_setAccount', 'UA-28551246-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/ga.js'; 
      var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); 
     })(); 
</script> 

这是标准的帐户信息和设置脚本。我试图跟踪鉴于谷歌页面上的后续示例

<button onclick="_gaq.push(['_trackEvent', 'button3', 'clicked'])"></button> 

任何援助将是伟大的。

回答

0

也有类似的问题。你可以使用类似附加到URL:

window.location.hash = '#/' + pageNumber; 

,然后在GA使用:

_gaq.push(['_trackPageview', location.pathname + location.search + location.hash]); 
+0

谢谢,我放弃了,但每个页面在整个应用程序启动时都会加载,这样做表示在登录第一页时访问了每个页面。我尝试在该过程的第二页使用一个按钮在函数中调用上述代码,并且尽管不会失败,并且从头到尾调用该函数,但分析脚本似乎不会运行。 – Zintah 2012-01-27 00:27:24

+0

由于某种原因,数据不会立即报告。我与GA的经验法则总是等待24小时。它为我工作[在这里](http://www.retaininternational.com/site/solutions/)。 – greener 2012-01-27 14:00:16

0

我同意trackPageView是一种更好的方式去,这样你就可以在页面中看到他们报告。我假设你没有重新加载页面,这就是为什么你仍然需要点击事件。如果是这样,你可以做这样的事情

function whenUserChangesControls (controlIdentifier) {  
    _gaq.push(['_trackPageview', '/control"+controlIdentifier ]);  
} 

或任何你想作为页面的名称。确保它是唯一的,否则GA会将它添加到页面的聚合中,如果您提供的名称与现有页面名称匹配。 然后,您只需在用户导航您的页面时使用onclick="whenUserChangesControls(cI)"

请记住,在GA的pageViews报告中,您将看到它们中的每一个都是独立的页面视图。

关于trackEvent代码,它看起来不错,错误必须在其他地方。