簡體   English   中英

Chrome和Safari中的Omniture鏈接跟蹤

[英]Omniture link tracking in Chrome and Safari

我們最近升級到Omniture代碼的最新版本AppMeasurement 1.2.3。 我們正在嘗試使用s.tl函數來記錄用戶單擊我們網站中不同鏈接的時間。 不幸的是,我很難在Chrome中使用它。

我們的鏈接具有data-track屬性,該屬性包含一個字符串,用於標識用戶單擊的鏈接的類型:

<a href="latest-news.php" data-track="Latest News">Latest News</a>

然后,我們有了這個點擊處理程序:

$('#pageBody')
    .off('click.omniture')
    .on('click.omniture', '[data-track]', function () {
        var track = this.getAttribute('data-track') || 'generic-link';
        OmnitureUtil.trackWidgetLink(track, this);
    });

哪個調用處理Omniture調用的這種函數:

OmnitureUtil.trackWidgetLink : function(linkName, linkElement) {
    s = s_gi(s_account);
    s.tl(linkElement, 'e', linkName, null, 'navigate');
    return false;
},

在Chrome中調用“ trackWidgetLink”,然后進行導航,但是Charles代理客戶端顯示未發出Omniture圖像請求。 因此,不會跟蹤click事件。 在Firefox中工作正常。 我知道WebKit瀏覽器的問題,瀏覽器在JS可以發送圖像請求之前取消了圖像請求。 但這應該是在H25中修復的 ,而AFAIK我正在使用Omniture建議的方法來解決此問題。

直接調用該方法在控制台中可以正常工作,例如,它可以用作內聯單擊處理程序。

<a href="latest-news.php" data-track="Latest News" onclick="s.tl(this,'e','xxx',null,'navigate');return false">Latest News</a>

但是我不想四處添加內聯處理程序到我們所有的鏈接中。 新的Omniture代碼是否還有其他人遇到這種問題? 誰能看到我在做什么錯?

糟糕,我只需要從點擊處理程序而不是trackWidgetLink返回false,所以:

   $('#pageBody')
    .off('click.omniture')
    .on('click.omniture', '[data-track]', function () {
        var track = this.getAttribute('data-track') || 'generic-link';
        OmnitureUtil.trackWidgetLink(track, this);
        return false;
    });

這使代碼可以在Chrome中運行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM