Google跟踪代码管理器自定义事件未触发

时间:2018-09-25 17:32:43

标签: google-tag-manager

我刚接触Google跟踪代码管理器,并正在尝试设置我的第一个自定义事件。

在我的html中,在我的头顶上:

<script>
  window.dataLayer = window.dataLayer || [];
  dataLayer.push({"event": "testEvent"});
</script>

在Google跟踪代码管理器中,我创建了一个使用“ testEvent”的触发器:

enter image description here

此外,我还创建了一个使用此自定义事件的标签:

enter image description here

最后,当我调试时,我看到我的自定义事件和标签都显示了:

enter image description here

但是,当我单击应该触发该自定义事件的DOM元素时,什么也没有发生。

我尝试将自定义事件触发器换成内置的点击触发器,并且效果很好,这告诉我我的标签本身已正确设置。

我错过了一步吗?为了使自定义事件起作用,我还需要做更多的事情吗?就像我说的那样,我知道我可以在此测试用例中使用常规点击触发器,但是在我的实际项目中,我不能仅使用常规点击触发器。

感谢您提供的任何帮助!

3 个答案:

答案 0 :(得分:1)

这是一个配置问题。如果我理解正确,那么您将尝试在有人单击具有特定CSS类的元素时触发事件标签。

要实现这一目标,您将需要:

  1. 转到GTM中的“变量”屏幕。在屏幕的顶部,有“内置变量”部分。单击“配置”按钮,应弹出一个侧面菜单。在“点击次数”部分下查找“点击类别”。选中“点击类”旁边的复选框,关闭此菜单,现在应显示“内置变量”下的“点击类”变量名称。

  2. 转到GTM中的“触发器”屏幕。在“点击”部分下创建“所有元素”类型的新触发器。当此触发器的配置出现时,请在“此触发器触发”下选择“一些点击”。您将看到3个输入字段,显示了此触发器的条件。在第一个选择框中,您应该看到“ Click Classes”作为可用选择之一,选择它。在下一个框中,选择适当的比较类型,在这种情况下,我们将选择“等于”。在最后一个输入框中,输入“ search__input”或要触发的CSS类的名称。

  3. 返回GTM中的“标签”屏幕。将此触发器添加到所需标签中,瞧!

答案 1 :(得分:0)

您需要使用JQuery或任何其他语言添加元素点击,并更改触发器以在“所有自定义事件”上触发

例如说我有一个聊天按钮

<script>
  var dataLayer = dataLayer || [];
   $('.chatBtn').click(function (e) {
    dataLayer.push({
      'event': 'chat-click'
    });
  });
</script>

该事件应在该特定元素上单击。

查看您的自定义事件,该事件未附加到任何元素上,请单击

答案 2 :(得分:0)

如果仅针对“ search_input”点击推送自定义事件,则可以将触发器修改为“所有自定义事件”

否则,如@GTMGuy所说,您需要在“ search_input” click事件上推送事件。在GTM预览中的事件触发过程中,单击事件并检查“变量-“ Click元素””的值是否符合您的触发条件。