0

特定のダウンロードリンクのクリックをキャプチャして、GoogleAnalyticsで追跡しようとしています。これが私のコードです

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を2回目に呼び出さないことです(「onclick」プロパティでこの関数を呼び出す場合のように)。JSコンソールからトラッカーを呼び出すことも期待どおりに機能します。それは私のリスナーだけにあります。

リスナーがGoogleのサーバーに接続する前に、デフォルトのアクション(新しいページの読み込み)を延期していない可能性がありますか?延期せずに同様のことを行う他の追跡スクリプトを見てきました。

4

1 に答える 1

0

試す

pageTracker._trackPageview('/pagex/downloadlink.html')

また、楽しみのために、このスクリプトの前に GA コードが最初にロードされることを確認してください。ときどき GA はそのようにうるさくて奇妙です。

それが役立つかどうか教えてください

@ctrentマーケティング

于 2009-08-12T05:39:24.643 に答える