Universal Analytics不会跟踪ajax内容

时间:2014-10-13 23:39:17

标签: ajax codeigniter google-analytics universal-analytics

我使用通用分析,我不确定这是否正确。

我有一个网站,其中加载内容并由ajax替换。 该站点是在MVC(codeigniter)中开发的。 在我设置的静态页面的头部:

ga('create', 'my-tracking-id', 'auto');
ga('send', {
'hitType': 'pageview',
'dimension1': 'www.myexamplesite.com/test',
'dimension2':'Static page',
'dimension3':'index section'
});

这个工作正常,但仅限于静态页面。 我在动态内容的ajax请求中使用了.done()中的相同代码,但Google Analytics不会显示此内容的任何数据。

有什么问题?

实际ajax代码

$.ajax({
 type: "POST",
 url: content_url+complement,  
 dataType: "html",
 beforeSend: function() {
  //show a loader gif
 }
})
.done(function(respuesta){
  ga('create', 'my-tracking-id', 'auto');
  ga('send', {
     'hitType': 'pageview',
     'dimension1': 'www.myexamplesite.com/test',
     'dimension2':'Static page',
     'dimension3':'index section'
    });
})
.fail(function( jqXHR, textStatus ){
    alert( "Request failed: " + textStatus );
});  

1 个答案:

答案 0 :(得分:1)

嗯,你绝对不需要再次运行ga('create', ...)命令(只需要在初始页面加载时完成),但这不应该实际阻止命中从发送。你看起来对我来说很好,也许你有一个JavaScript错误或其他阻止脚本执行的东西。

我打开网络检查员并进行一些标准调试,看看会发生什么。

此外,调试analytics.js问题的最佳方法是加载库的调试版本,然后您可以看到实际运行的内容以及未运行的内容。您不应该等待点击进入Google Analytics网站调试这些类型的问题。

https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced#debug