我正在使用jQuery将onClick事件附加到网站上的某些元素,具体取决于元素是否存在,例如:
$(document).ready(function() {
if ( $("#webform-client-form-15897").length ) {
$("#edit-submit")
.attr("onClick", "_gaq.push(['_trackPageview', '/feedback-submitted'])");
}
});
这对于表单上的“提交”按钮等内容非常有效,而且我可以通过虚假的页面访问来跟踪目标(事件不允许这样,因此是假触发器)。
问题是,当我将类似的onClick事件设置为Anchor HTML元素时,将用户带出网站,即使使用相同的代码附加例如警报,我也没有看到任何内容出现在我们的分析中(“foo”)事件显示其工作正常,我得到一个弹出窗口。
以下是使用jQuery处理后实际锚元素的外观:
<a href="http://www.example.com/foo" onclick="_gaq.push(['_trackPageview', '/ad-clicked'])">Anchor text</a>
我做错了什么,因为我已经看到这个示例用于一些教程并且代码IS正在执行,因为我可以使用断点和alert()测试来跟踪它?
答案 0 :(得分:3)
问题通常总是因为在用户进入下一页之前没有足够的时间来执行GA代码。如果链接打开一个新窗口(target =“_ blank”),这不是问题,因为原始页面仍然存在且代码可以完成加载。处理此问题的常用方法是使用settimeout将重定向延迟一点,以便为GA脚本执行时间。您可以访问以下链接,了解有关实施的详细信息。
http://www.google.com/support/analytics/bin/answer.py?hl=en&answer=55527