2011-01-27 60 views
1

我使用jQuery附加的onclick事件的某些元素在網站上,這取決於是否存在元素不工作假冒網頁瀏覽跟蹤,例如:異步谷歌分析上的鏈接,導致該站點外

$(document).ready(function() { 
    if ($("#webform-client-form-15897").length) { 
    $("#edit-submit") 
     .attr("onClick", "_gaq.push(['_trackPageview', '/feedback-submitted'])"); 
    } 
}); 

這對於表單上的提交按鈕等工作非常出色,我可以通過假頁面訪問來跟蹤目標(事件不允許這樣做,因此是假觸發器)。

問題是,當我將類似的onClick事件設置爲錨定HTML元素時,會將用戶帶出網站,即使使用相同的代碼附加例如alert(「foo」)事件顯示其工作正常,我彈出一個窗口。

下面是實際的錨元素看起來像使用jQuery處理後:

<a href="http://www.example.com/foo" onclick="_gaq.push(['_trackPageview', '/ad-clicked'])">Anchor text</a> 

我在做什麼錯了,因爲我已經看到了這個例子上幾個教程中使用和代碼執行的儘管我可以使用斷點和alert()測試來跟蹤它嗎?

回答

3

問題通常始終是因爲沒有足夠的時間讓用戶進入下一頁之前執行GA代碼。如果鏈接打開一個新窗口(target =「_ blank」),這不是問題,因爲原始頁面仍然存在,並且代碼可以完成加載。處理這個問題的常用方法是使用settimeout來稍微延遲重定向,給GA腳本執行時間。有關實施的詳細信息,請訪問下面的鏈接。

http://www.google.com/support/analytics/bin/answer.py?hl=en&answer=55527

+0

而關於這一點,你可能要考慮計算出站鏈接作爲一個事件,而不是虛擬的頁面瀏覽量。 – 2011-01-27 14:43:26