使用Google Analytics执行trackPageview时出现问题

时间:2009-08-11 22:01:21

标签: javascript javascript-events

我正在尝试捕获某些下载链接的点击次数并在Google Analytics中跟踪它们。这是我的代码

var links = document.getElementsByTagName("a");
for (var i = 0; i < links.length; i++) {
    linkpath = links[i].pathname;
    if( linkpath.match(/\.(pdf|xls|ppt|doc|zip|txt)$/) || links[i].href.indexOf("mode=pdf") >=0 ){
        //this matches our search
        addClickTracker(links[i]);
    }
}
function addClickTracker(obj){
    if (obj.addEventListener) {
        obj.addEventListener('click', track , true);
    } else if (obj.attachEvent) {
        obj.attachEvent("on" + 'click', track);
    }
}
function track(e){
    linkhref = (e.srcElement) ? e.srcElement.pathname : this.pathname;
    pageTracker._trackPageview(linkhref);

 }

直到pageTracker._trackPageview()调用工作的所有内容。在我的调试中,linkhref正在以字符串形式传递。没有异常的人物,没什么。问题是,在观看我的http请求时,Google从不再对跟踪gif进行第二次调用(如果你在“onclick”属性中调用此函数的话)。从我的JS控制台调用跟踪器也可以按预期工作。这只是在我的听众中。

可能是因为我的听众在有机会联系Google的服务器之前没有推迟默认操作(加载新页面)吗?我已经看到其他跟踪脚本执行类似的操作而没有任何延迟。

1 个答案:

答案 0 :(得分:0)

尝试

pageTracker._trackPageview( '/ pageX属性/ downloadlink.html')

此外,只是为了好玩,请确保在此脚本之前首先加载GA代码。 GA有时会像那样挑剔和怪异。

如果有帮助,请告诉我

@ctrentmarketing