gpt4 book ai didi

JavaScript 监听 _gaq.push?

转载 作者:行者123 更新时间:2023-11-29 17:06:45 24 4
gpt4 key购买 nike

我有一个小部件可以将 javascript 代码注入(inject)我的用户网站。现在我想添加监听 Google Analytics _addTrans 调用的功能。

调用 Google Analytics 的示例:

<a onclick=" _gaq.push(['_addTrans',
'1234', // transaction ID - required
'Acme Clothing', // affiliation or store name
'11.99', // total - required
'1.29', // tax
'5', // shipping
'San Jose', // city
'California', // state or province
'USA' // country
]);" href="#">CONVERSION</a>

_gaq 是 Google Analytics 提供的对象。

我的脚本是否也可以接收到 _gaq 对象的推送事件?

我试过:

if (window._gaq) {
for (var i = 0; i < _gaq.length; i++) {
var method = _gaq[i].shift();
console.log(method);
}
};

window._gaq = {
push: function() {
try {
var args = Array.prototype.slice.call(arguments, 0);
console.log(args);
}
catch(err) {
console.log(err);
}
}
};

它可以工作,但 Google Analytics 现在无法再跟踪转化。看来我压倒了它。知道如何做到这一点吗?

最佳答案

您想保存原始的 push 函数,然后在覆盖结束时调用它。

var originalPush = window._gaq.push;
window._gaq.push = function () {
// do something else
...
// then call the original function with the same args
originalPush(arguments);
};

为了将来引用,这称为 Monkey Patching .

关于JavaScript 监听 _gaq.push?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24109446/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com