我正在向导航菜单链接添加一个Google Analytics跟踪事件,代码如下:
(function ($) {
"use strict";
$(function () {
$("body").on('click', '.menu-item a', function () {
var trackingCode = $(this).next(".ga-tracking");
if (trackingCode.length > 0) {
var t1 = trackingCode.data("tracking-1"),
t2 = trackingCode.data("tracking-2"),
t3 = trackingCode.data("tracking-3"),
t4 = trackingCode.data("tracking-4"),
params = "'" + t1 + "','" + t2 + "','" + t3 + "'";
_gaq.push([params]);
}
});
});
}(jQuery));您可以在这里看到它的工作方式:http://paulwp.com/blog/要触发代码,请单击顶部黑条中的博客链接。
这是我得到的错误:
_gaq.push processing "'_trackEvent','Store_Outbound','Link_Click'" for args: "[]":
Called method "'_trackEvent','Store_Outbound','Link_Click'" threw exception.TypeError: Cannot call method 'apply' of undefined 然而,它应该给出这样的东西:
_gaq.push processing "_trackEvent" for args: "[Store_Outbound,Link_Click]": 我猜是我用变量构建参数的方式导致了这个问题
发布于 2013-02-09 00:53:58
您传递的值是错误的。这实际上就是您正在做的事情:
_gaq.push(["a,b,c"]);
这是一个只有一个元素的数组。
它应该是这样的:
_gaq.push(["a","b","c"]);
这是一个包含多个元素的数组。
所以基本上你需要做的就是
params = [t1,t2,t3];
_gaq.push(params);或者直接将它们放入:
_gaq.push([t1,t2,t3]);https://stackoverflow.com/questions/14777360
复制相似问题