【问题标题】:Pushing dynamic content using GTM element visibility trigger and data layer使用 GTM 元素可见性触发器和数据层推送动态内容
【发布时间】:2018-07-25 10:13:23
【问题描述】:

Google 跟踪代码管理器的元素可见性触发器似乎是一种使用类或 ID 跟踪元素是否出现在视口中的相当出色的方法。

标准报告似乎会拉回类似这样的数据

但是,我想做的是能够使用触发器来检测和报告动态创建的列表中的项目。例如,元素将根据其由列表中所有其他元素共享的类触发,每个元素都可以填充要从数据库中提取的特定数据,例如:名称、产品 ID、价格等。

目前这是使用自定义事件触发器完成的,但这会报告页面上的所有元素,无论它们是否已加载。

我想知道元素可见性触发器是否适合这个问题,如果是,我该如何操作它来做我需要的事情?

【问题讨论】:

    标签: javascript google-tag-manager google-datalayer


    【解决方案1】:

    可能是的。

    您将使用 CSS 选择器并通过类名称为您动态创建的项目进行选择。

    在“何时触发此触发器”选项中,您可以选择“每次出现元素时”。

    最后,您将设置“监听 DOM 更改”选项。如果触发器中的其他条件现在匹配,这会在每次操作 DOM 时检查(例如,通过插入列表元素)。

    请注意,GTM 警告说使用该选项可能会降低性能(因为它会在每个 DOM 操作上运行)。所以你可能不想经常这样做。

    【讨论】:

    • 谢谢@Eike Pierstoff。这些是我目前拥有的设置,并带回了我包含的屏幕截图中的结果。除非我当然错过了什么。我希望能够做的是返回保存在数据库中的特定数据,这些数据在加载时与每个元素相关。
    • 啊,我没弄明白。您可以为 gtm.element 创建一个数据层变量(它将返回刚刚变得可见的元素),如果您使用自定义数据属性来读取该元素的属性,则可以将 getAttribute 用于标准属性或数据集。
    猜你喜欢
    • 1970-01-01
    • 2022-12-14
    • 1970-01-01
    • 1970-01-01
    • 2018-12-17
    • 1970-01-01
    • 1970-01-01
    • 2014-01-27
    • 2018-04-05
    相关资源
    最近更新 更多