2016-12-27 179 views
0

我們在頁面上有兩個鏈接,並希望使用gtm記錄對它們的點擊。在標籤管理器事件中設置自定義標籤

<a href="..." data-gtm-event="register">Register now</a> 
<a href="..." data-gtm-event="logon">Log on</a> 

我們有對[data-gtm-event]的CSS選擇器匹配的元素的點擊次數的觸發器。

最後,我們有一個標記集,使用觸發器來記錄Link event。觸發器正在觸發並且標籤正在工作。

但我想有一種方法可以將記錄的事件上的標籤更改爲RegisterLog on,具體取決於他們點擊的鏈接。在過去,我們爲每個標籤和一個標籤分別製作了一個觸發器,但這不可持續。

我知道我可以創建自定義JavaScript變量像這樣:

function(){ 
    return "My label"; 
} 

,然後使用該自定義變量指定的事件標籤。我確實看到了這個工作。

有沒有辦法讓這種動態?

我在網上找到了using the dataLayer的例子,但我不想爲我的html元素添加onclick屬性。

有沒有在javascript變量中訪問clicked元素並從其數據屬性中獲取值的方法?

我發現使用宏的頁面,但這是舊版本,對不對?

回答

2

當然。如果啓用內置的「Click」變量,其中一個是「單擊元素」,它實際上返回DOM元素及其所有屬性。因此,在您的自定義

JavaScript變量可以參考這個做

function() { 
    return {{Click Element}}.getAttribute('data-gtm-event'); 
} 

(也許你想檢查屬性確實存在第一)。

+0

感謝您的想法,但它不適合我。我把它作爲我的自定義JavaScript變量,並把它放在我的標籤的標籤字段。但在預覽測試中,標籤會觸發並且自定義變量爲空。該屬性應該存在,因爲觸發器是[data-gtm-event]的css選擇器。如果我只是放在{{單擊元素}},我得到鏈接的href。 – Rothrock

+0

現在,我說它沒有工作......好吧,它剛剛開始工作。不知道爲什麼。感謝您的幫助。 – Rothrock

相關問題