好的,所以,很长一段时间以来,我一直在努力使_gaq.push工作。
我对应的代码如下。
var ext_id = localStorage.ext_id;
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-xxxxx-xx']);
_gaq.push(['_trackPageview']);
//console.log(_gaq);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = chrome.extension.getURL('js/ga.js'); //uncomment this
//ga.src = "js/ga.js"
// ga.src = 'https://ssl.google-analytics.com/ga.js';
document.head.append(ga); // make it head
// var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); // comment this out
})();
chrome.runtime.onConnect.addListener(function(port) {
console.assert(port.name == "google-analytics");
port.onMessage.addListener(function(response) {
console.log("Message Passing with response",response.category,response.action, response);
// _gaq.push(['_gat._forceSSL']); // remove this
_gaq.push(['_trackEvent', response.category, response.action,ext_id]); // trouble shoot this
console.log(_gaq, "sending this");
});
});
因此,当付款页面上没有任何活动超过1秒钟时,将执行以上操作。并正确触发,即在付款页面上闲置1秒后执行。但是,但是_gaq.push在网络选项卡中未显示任何跟踪,为了使其更加晦涩,我什至没有遇到任何错误。有人可以告诉我我可能做错了什么吗?
答案 0 :(得分:0)
gaq.push看起来不错,应该可以工作。
我认为您的ga.js库未加载。也许由于getURL已被弃用? https://developer.chrome.com/extensions/extension#method-getURL