我在一段时间前发布了这篇文章,后来我做了更多的研究,并提出了这个问题,但我仍然没有解决方案……
我有一个网站(www.seatgeek.com),其中有很多链接是通过AJAX加载的。当用户单击这些链接中的一个时,我希望将其算作目标,因此我尝试将pageTracker._trackPageview()附加到链接的onClick属性。但是GA没有记录这些点击,我不知道为什么。下面是其中一个链接的代码:
<a href="<?php echo $tickets[$x][3] ?>" target = "_blank" class="buyTicketsLink" onClick="pageTracker._trackPageview('/outgoing/event4.php');">BUY TICKETS</a>我已经在链接不是通过AJAX加载的情况下尝试过上面的代码,它工作得很好,所以这肯定是AJAX特有的问题。此外,在尝试解决此问题时,我还尝试以编程方式添加onclick事件,例如:
<script>
function attach_goal_tracking() {
var links = document.getElementsByClassName("buyTicketsLink");
for(var i=0; i<links.length; i++) {
links[i].onclick = record_goal;
}
}
function record_goal() {
pageTracker._trackPageview('/event/outgoing');
}
</script>这也不起作用。但是,当我向record_goal()函数添加一个测试警告框时,可以清楚地看到该函数正在运行。例如,如果我将函数更改为:
function record_goal() {
alert('Hello');
pageTracker._trackPageview('/event/outgoing');
}然后,当点击链接时,会显示“Hello”警告框。但是仍然没有记录到'/event/outgoing‘的页面视图。
我完全被可能导致这种情况的原因弄糊涂了。任何建议都将不胜感激。
发布于 2009-10-25 07:11:05
您正在使用Prototype这样的JavaScript库吗?document.getElementsByClassName不是标准的JavaScript DOM方法。
您是否收到任何JavaScript错误?例如,打开Firebug或Firefox错误控制台。
在Firebug中,如果您在控制台中输入pageTracker;,是否会告诉您pageTracker肯定是一个函数,而不是undefined
发布于 2009-11-07 03:02:51
尝试在trackPageView()调用后添加"return false“,因此...
onClick="pageTracker._trackPageview('/outgoing/event4.php'); return false">我们的分析代表向我推荐了这个,它就像一个护身符。"return false“通常会说,”嘿,不要注意href“(我想,不管怎样),但我的实现工作得很好。
希望这能有所帮助!
https://stackoverflow.com/questions/1619444
复制相似问题