Piwik跟踪器允许自定义跟踪,例如:

jQuery('div.orange').click(function() {
    piwikTracker.trackGoal(3); // Track click on this hitarea
});

在我的WordPress环境中,出于明显的原因,我将jQuery加载到与piwik.js脚本分开的脚本中。

在Chrome中,我收到错误消息



在我使用自定义跟踪的脚本上。

有没有一种方法可以在调用事件处理程序函数之前定义该函数?为什么只有Chrome?

编辑

我 checkout 了加载JavaScript的piwik php脚本,它实际上是将脚本加载到页脚中。标题中将加载用于调用自定义跟踪的函数。这有关系吗?页眉中的脚本是否总是在页脚之前加载?

最佳答案

异步跟踪以一种优雅的方式解决了这个问题:

var _paq = _paq || [];
_paq.push(['trackGoal', 3]);

如果piwik之前已加载,则会自动发送目标请求。如果在其后加载piwik,则只有在加载piwik之后才会处理该数组!

有关如何设置异步跟踪的信息,请参见documentation,它将是Piwik 1.11的默认方法。

10-08 00:20