Fil*_*ski 1 javascript google-analytics
我试图在发送 GA 点击事件时包含自定义维度列表。
此代码有效:
ga('send', 'event', category, action, label, {
'hitCallback': function () {
//some code goes here
}
});
Run Code Online (Sandbox Code Playgroud)
但是在添加自定义维度时:
ga('send', 'event', category, action, label, customDimensions.dimensionsToSend, {
hitCallback': function () {
//some code
},
'hitCallbackFail': function () {
alert("Unable to send Google Analytics data");
}
});
Run Code Online (Sandbox Code Playgroud)
hitCallback 和 hitCallbackFail 都不会被触发。我在几个地方(比如这里)读到我应该能够向 GA 发送事件函数添加自定义维度,但也许我做错了什么。
您的第二个代码块的问题是未正确设置自定义尺寸。您不能将自定义维度作为进一步的参数传递给 mainga()函数。相反,您需要通过fieldsObject(作为您作为最后一个参数发送的对象的一部分)传递它们,如下所示:
ga('send', 'event', category, action, label, {
'dimension1': 'Some value', // Custom Dimension 1
'dimension2': 'Some value 2', // Custom Dimension 2
'hitCallback': function () {
//some code
}
});
Run Code Online (Sandbox Code Playgroud)
这是以下的简写:
ga('send', {
'hitType': 'event',
'eventCategory': category,
'eventAction': action,
'eventLabel': label,
'dimension1': 'Some value', // Custom Dimension 1
'dimension2': 'Some value 2', // Custom Dimension 2
'hitCallback': function () {
//some code
}
});
Run Code Online (Sandbox Code Playgroud)
请参阅ga()命令队列参考。
另请注意,这hitCallbackFail不是有效字段;不会因为失败而被调用。
请参阅可用字段列表。
事实上,hitCallback无论您发送的匹配成功还是 Google Analytics 拒绝匹配,您提供的函数都会执行。唯一不会执行的情况是 Google Analytics 库未加载,或者服务器连接失败。
如果您有即使服务器出现故障也想执行的代码,您可以使用超时。请参阅上页中的此示例:
// Use a timeout to ensure the execution of critical application code.
ga('send', 'pageview', {'hitCallback': criticalCode});
setTimeout(criticalCode, 2000);
// Only run the critical code once.
var alreadyCalled = false;
function criticalCode() {
if (alreadyCalled) return;
alreadyCalled = true;
// Run critical code here...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2218 次 |
| 最近记录: |