我在客户的网站上设置Google跟踪代码管理器,但我无法点击事件标记 .
我将触发器设置为触发按钮的CSS选择器 .
按钮本身有一些子元素,包括一个svg图标 . 单击svg时,单击将在数据层中注册,但不会触发标记 . 标签仅在我选择按钮本身时触发 .
我还尝试在我自己的脚本中删除事件监听器,如果 return false;
或 e.stopPropagation()
阻止它,则附加到这些按钮,但这并没有改变任何东西 .
我理解GTM会监听冒泡到文档的点击事件 . 如果是这种情况,我的标签应该在点击一个孩子时触发,对吧?还是我误解了什么?
或者,我应该在我的脚本中将事件推送到dataLayer而不是使用单击触发器吗?
10 gtm.click
正确地触发了标记
9 gtm.click
是没有的儿童svg
最后一个屏幕截图是我的触发器的触发规则 .
1 回答
我经常遇到这种类型的问题 . 对于像glyphicons这样的东西,它也会出现
<i>
标签 . 只需将CSSpointer-events:none;
添加到该SVG(除非您要求SVG可单击而不仅仅是parentElement) . SVG上的pointer-events:none
意味着当单击它时,click事件在父元素上注册 .最好的方法是让客户端开发人员添加JS . 更糟糕的方法是通过GTM在自定义HTML标签中运行类似的东西
jQuery('a.link-youre-tracking svg').css('pointer-events','none)