我正在一个客户的网站上设置谷歌标签管理器,但我在启动点击事件标签时遇到了麻烦。
我已将触发器设置为在按钮的CSS选择器上触发。
按钮本身有一些子元素,包括svg图标。单击svg时,单击会在数据层中注册,但不会触发标记。标记仅在我选择按钮本身时激发。
我还尝试在我自己的脚本中删除附加到这些按钮的事件侦听器,以防返回false
或e.stopPropagation()
阻止了它,但这并没有改变任何事情。
我的理解是,GTM侦听文档中出现的点击事件。如果是这种情况,我的标签应该在点击孩子时触发,对吗?还是我误解了什么?
或者,我是否应该将事件推送到脚本中的dataLayer,而不是使用单击触发器?
截图
10gtm。单击
正确触发标记
9gtm。click
是否为未添加的子svg
最后一个屏幕截图是我的触发器的触发规则。
如前所述,“只是链接”触发器将冒泡到父
function () {
return function (target, selector) {
while (!target.matches(selector) && !target.matches('body')) {
target = target.parentElement;
}
return target.matches(selector) ? target : undefined;
}
}
然后在另一个自定义JavaScript变量中使用该函数,如下所示:
var elementFound = {{Find closest}}({{Click Element}}, 'button');
阅读Simo Ahava的文章了解更多信息。
使用的解决方案/想法:
pointer-events:none
但是当你有一个复杂的div(里面有20个类和15个元素)并且你用一个链接
目前GTM对这个问题缺乏正常的解决方案:(对于复杂的结构,你应该为
指针事件
添加“额外的div”(工作很好,但“不优雅”)。
<a class="track-this-click-by-gtm" href="url">
<div style="pointer-events:none">
extra unwanted div
<i></i>
<p>hello</p>
<ul><li>hello2</li></ul>
<date>2019</date>
lorem
</div>
</a>
我经常遇到这种问题。它发生与
最好的方法是让客户端开发人员添加JS。更黑客的方法是通过GTM在自定义HTML标记中运行类似的东西
jQuery('a.link跟踪svg'). css('指针事件','无)
我正在尝试做一个简单的标记,用于测量元素被单击的次数。 我遇到了困难,所以我想找一个视频来帮助我,因为标签管理器的布局已经改变了。 我在Udemy上遵循以下免费教程 https://www.udemy.com/google-tag-manager-advanced/ 特别是第8章按钮点击——这是一个免费的章节。它告诉我设置以下选项: 标签配置: 谷歌分析 跟踪ID:{{Tracking ID}}
因此,我在我的Shopify商店中有一个“添加到购物车”按钮,我希望在被点击后,谷歌标签管理器中有一个标签以5秒的延迟触发。 按钮类是: 这是按钮: 我尝试了以下方法: 单击类包含/等于/匹配css选择器等,但没有任何效果。设置此标记格式的正确方法是什么,以便每次单击按钮时它都会触发?
我正在实施谷歌标签管理器为Android应用程序V4由我的营销团队要求为未来使用,我从来没有在GTM网站,所以我在这方面很天真。 我已经根据官方网站上的说明创建了帐户、容器和标签。我已经将tag manager与google analytics tracking id链接。我已经根据网站上的说明在我的应用程序中编写了代码,并将容器下载到原始文件夹中。 当我运行我的应用程序时,它会在logcat中给
我正在尝试学习如何在一个新网站上整合谷歌分析和定制事件跟踪。在研究它之后,我似乎无法理解Google Tag Manager和仅仅编写自定义事件跟踪代码之间的区别和关系。 Google Tag Manager是否只是一种更简单的跟踪信息的方法,而无需编写JS?
我有一个按钮,它有填充,但它是在一个跨度标签包装。我正在使用作为谷歌标签管理器中的触发器。 因此,如果我现在在DOM中单击span而不是按钮元素,那么span是它是被单击的元素,所以现在它不会得到id="gtm-id",因为它不是被单击的元素。 如何让谷歌标签管理器冒泡并从它的包装父元素中获取数据?
当Google Tag Manager提供JQuery on click功能时,该功能不起作用。 我已经研究了这些问题,并将我的代码包装在一个文档中,并使用了更新后的版本。在('click',function(){})语法上,它仍然不起作用。 为什么这个jQuery点击功能不工作? jQuery onhtml没有对动态插入的超文本标记语言元素进行触发? Google标记管理器:事件跟踪不工作 我试