[英]is _gaq.push not working properly?
我正在尝试通过Google Analytics(分析)跟踪我的网页,这是我的代码
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'XXXXXXXXXX']);
_gaq.push(['_setDomainName', 'somesite.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);
})();
(function ($) {
// Log all jQuery AJAX requests to Google Analytics
$(document).bind('ajaxComplete', function(event, xhr, settings){
console.log('ajax Request');
console.log(settings.url);
_gaq.push(['_trackPageview', settings.url]);
});
})(jQuery);
在每个ajax请求中,我可以看到控制台具有值
ajax Request
url of the page
这意味着_gap.push正在工作(因为页面上没有js错误)。 但是,当我通过Live HttpHeaders检查我的需求时,没有对Google Analytics(分析)的需求,该如何进行跟踪?
这是萤火虫中的屏幕截图
_gaq.push中的要点是,在实际加载Google Analytics(分析)之前,“ _ gaq”只是一个普通数组。 就是说:确实确实会出现错误,无论从触发Google的要求来看,它是否“有效”。
Google Analytics(分析)的工作方式不是通过ajax(或者至少没有关于如何发送请求的具体实现细节)。 通常使用的方法是使用包含在该图像URL的查询字符串中的跟踪数据创建一个Image元素。 毕竟,该页面并不关心Google Analytics(分析)的响应,它只想发送其数据并开始运行!
而不是使用LiveHttpHeaders,我将检查开发人员工具的“网络”面板-如果您具有Javascript控制台,则可能也可以访问它。 您应该能够在该面板上查看请求的所有详细信息。
您还可以使用ga.js的调试版本来诊断错误。 它将“无效的跟踪代码”之类的内容打印到Javascript控制台中。
在此页面上搜索“使用ga_debug.js进行调试”:
https://developers.google.com/analytics/resources/articles/gaTrackingTroubleshooting
查看发送的http标头-我使用HttpFox-并过滤'utm'。 查看查询字符串(httpfox为您将其分解成一个表),您可以看到匹配的所有utm参数-帐号(utmac),页面(utmp)等。如果不熟悉utm参数请检查此参考 。 对发送到google服务器的图像请求的这种模拟和分析对于调试Google Analytics(分析)问题非常有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.