2013-05-27 31 views
5

當用戶按下網頁中的按鈕時,我必須發送谷歌標籤管理器事件。事實上,這個按鈕是在一個iframe中,然後點擊,這個iframe被關閉,另一個出現...等待dataLayer.push()與谷歌標籤管理器

我設置這個事件數據的JavaScript事件點擊事件,然後我打電話dataLayer.push將該信息發送到谷歌分析。

我可以看到螢火蟲此請求,但被取消它到達儘快iframe的關閉谷歌前...

有沒有辦法等待關閉我的iframe在此之前打電話?有沒有其他的方法來「推送」這些數據?

在此先感謝。

回答

1

最後我沒有找到什麼更好的辦法,使這項工作,所以我只是找到了一個解決方案:

- 按鈕event.preventDefault() -I調用推送。 - 等一下。 - 繼續按鈕的默認操作。

2

爲了使這個問題對當前讀者更有用:現在您將在Google跟蹤代碼管理器中創建事件偵聽器標記並檢查「等待依賴於此事件的標記」複選框(事件偵聽器標記在GTM中不存在當這被問到)。

(當然,技術背景與問題中陳述的有點不同 - 因爲datalayer.push不會向Google Analytics發送數據)。

+0

datalayer.push不會向Google發送數據?你如何獲得新的數據? – zapico

+1

在標記管理器中配置的所有內容都包裝在JavaScript對象中並注入頁面。 Datalayer.push將鍵/值對添加到dataLayer對象。數據層對象然後由GTM JavaScript代碼進行評估。它包含的GTM代碼可能會向Google Analytics發送信息(如果您配置了GA代碼),而不是dataLayer。 dataLayer只是(非持久性)鍵/值存儲,它不會發送任何內容。 –

+0

讓GTM知道它必須發送數據的觸發器是什麼? – zapico