_gaq
全域物件可直接用於透過 push(...)
方法進行非同步網頁追蹤。其中包含建立追蹤器物件的方法,但僅用於極少數情況下。
如要追蹤傳統網頁追蹤,請改用 _gat
全域物件。
_gaq 物件方法
- 已淘汰
_createAsyncTracker(accountId, opt_name)
- 已淘汰
_getAsyncTracker(opt_name)
push(commandArray)
方法說明
_createAsyncTracker()
_createAsyncTracker(accountId, opt_name)
- 建立追蹤物件時,使用追蹤程式名稱做為追蹤呼叫。如未指定名稱,會是空白字串
''
,代表非同步語法中的預設追蹤器。如果指定名稱已有非同步追蹤工具,系統會以新的追蹤器覆寫。注意:此方法通常只能在已推送至
_gaq
的函式中使用。只有在極少數情況下才應使用。
_gaq._createAsyncTracker('UA-65432-1');
參數
String accountId
追蹤器物件的完整網站資源 ID (例如 UA-65432-1)。
String opt_name
要儲存追蹤程式物件的名稱。稍後請使用這個名稱在非同步追蹤呼叫中參照追蹤器物件。
return
Tracker
已建立的追蹤物件。_getAsyncTracker()
_getAsyncTracker(opt_name)
-
傳回先前以指定名稱建立的追蹤器物件。
如未指定名稱,系統會使用預設追蹤程式名稱 (空字串
''
)。如果指定名稱的追蹤器物件不存在,系統會建立新追蹤程式並指派給該名稱,然後傳回。注意:此方法通常只能在已推送至
_gaq
的函式中使用。只有在極少數情況下才應使用。
_gaq._getAsyncTracker();
參數
String opt_name
要擷取的追蹤器物件名稱。
return
Tracker
擷取或建立的追蹤物件。推送
push(commandArray)
-
執行指定的
command array
,這只是符合以下格式的 JavaScript 陣列。陣列的第一個元素必須是以字串形式傳送的追蹤程式方法名稱。系統會將其他陣列元素做為引數,傳遞至函式。一般來說,以下使用情況:
var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-65432-1']); _gaq.push(['_trackPageview']);
這個函式的名稱為「push」,因此在 Analytics (分析) 載入前,您可以使用陣列來取代
_gaq
。在 Analytics (分析) 載入時,指令會推送/排入陣列。Analytics (分析) 完成載入後,會以 _gaq
物件取代陣列,並執行所有已排入佇列的指令。之後對 _gaq.push
的呼叫會解析為這個函式,進而在推送時執行指令。如要命名追蹤程式,您可以在方法名稱前方加上追蹤器名稱 (以及點)。如果函式名稱符合追蹤程式的名稱,系統會在該追蹤器上執行該函式。
以下範例建立並採用了 mymyTracker 的追蹤工具。
var _gaq = _gaq || []; _gaq.push(['myTracker._setAccount', 'UA-65432-2']); _gaq.push(['myTracker._setDomainName', 'foo.com']); _gaq.push(['myTracker._trackPageview']);
注意:追蹤器會在指令初次參照時建立追蹤器。預設追蹤程式是透過第一個指令建立,且並未明確指定追蹤器。預設追蹤程式的名稱為空白字串
''
。除了推送指令陣列之外,您也可以推送函式物件。這對於傳回值的追蹤器方法特別實用。 這些函式可以參照
_gat
和 _gaq
。var _gaq = _gaq || []; _gaq.push(function() { var tracker = _gat._getTracker('UA-65432-1'); tracker._trackPageview(); });
您也可以直接在網頁的 HTML 中使用推送語法。
onclick="_gaq.push(['_trackEvent', 'name', value]);"
如果非同步 Analytics (分析) 程式碼片段位於連結上方,在系統未擷取任何點擊時,就會擷取點擊,即使 Analytics (分析) 尚未在點擊時完全載入。這是非同步追蹤的諸多優點之一。
最後,您可以一次推送所有指令,而不必為每個指令陣列輸入 _gaq.push(...)
。以下程式碼演示了這個技巧。詳情請參閱非同步程式碼片段使用指南。
_gaq.push( ['_setAccount', 'UA-XXXXX-X'], ['_setDomainName', 'example.com'], ['_setCustomVar', 1, 'Section', 'Life & Style', 3], ['_trackPageview'] );
參數
Array commandArray
要執行的指令。其中一或多個項目可以在相同的叫用中推送。return
Number
無法執行的指令數量。