2012-02-15 90 views
3

這裏的GA輸出代碼谷歌分析自定義事件:追蹤不正確

<script type="text/javascript"> 

    var _gaq = _gaq || []; 
    _gaq.push(['_setAccount', 'UA_CODE']); 
    _gaq.push(['_setDomainName', 'SUBDOMAIN']); 
    _gaq.push(['_trackPageview']); 
    _gaq.push(['_trackEvent', 'Priority', 'Created (day)', 'Label info', '']); 



    (function() { 
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; 
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; 
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); 
    })(); 

</script> 

的trackEvent行似乎是正確的...但由於某些原因不跟蹤。是因爲我把價值領域留在了零?

回答

6

對於_trackEventvalue參數應該是一個整數。由於它是可選參數,因此您可以將其忽略:

_gaq.push(['_trackEvent', 'Priority', 'Created (day)', 'Label info']); 

具有非整數值將會阻止事件被跟蹤。

+1

我改變了這一點,現在它說我的訪問者正在發送事件(401次訪問發送了事件),但它仍然表示總共有0個事件。我只是在幾個小時前做出這個改變,能否沒有足夠的時間來加載事件呢? – 2012-02-15 23:26:33

+0

@MatthewBerman大概需要一天或2天才能開始顯示這些事件 – Eduardo 2012-02-16 00:45:06

+0

@eduardocereto哦真的嗎?好吧,這很奇怪,但我會在幾天內回覆。這很奇怪,因爲它說用戶正在發送事件,但實際事件沒有顯示出來。這是你的經歷嗎?另外,我的測試事件(忘記了我是如何觸發此事件的)在它發生的同一天出現。 – 2012-02-16 01:16:34

1

我相信_trackEvent在從GA跟蹤代碼段中調用時不能正常工作,至少它不是用於這種用法。如果您想要在頁面加載後執行活動,請嘗試從標記的onLoad事件中調用它。

其次,傳遞一個可選的值參數爲''將使其未被禁用,看起來它可能會產生一個錯誤,所以,因爲它是可選的,所以不要傳遞它。

而且在GA報告中存在延遲,數據處理需要大約24小時(您可以在新版本和舊版本之間切換,有時一個數據顯示數據比另一個更快)。

+0

您爲什麼認爲'_trackEvent' wouldn'來自GATC的工作? – Eduardo 2012-02-16 07:41:03

+0

另外''''和'undefined'是完全不同的東西。這是一個很好的例子。如果您將值作爲空字符串傳遞(''''),它將不起作用,但如果您忽略它或將其作爲「未定義」傳遞,則該事件將起作用。 – Eduardo 2012-02-16 07:42:07

+0

我相信空洞字符串和未定義可能會或可能沒有不同,這將取決於條件語句。在JS中=='undefined'爲真,'''=== undefined'爲false。在任何情況下,將空字符串和undefiend var都傳遞到該可選參數中完全沒有意義。 – Nikolay 2012-02-16 08:17:08