当Google Tag Manager提供JQuery on click功能时,该功能不起作用。
我已经研究了这些问题,并将我的代码包装在一个文档中,并使用了更新后的版本。在('click',function(){})语法上,它仍然不起作用。
为什么这个jQuery点击功能不工作?
jQuery onhtml没有对动态插入的超文本标记语言元素进行触发?
Google标记管理器:事件跟踪不工作
我试图添加一个jQuery点击功能发送数据到谷歌分析。
当有人点击带有一类信息的锚定标签时。我使用jquery导航到它与一类市场的同级跨度,并获取它的文本值。
由于有多个锚定标记具有相同的类,并且我需要特定的文本值,因此我使用父li标记的属性来查找正确的兄弟跨度。
这是HTML
<ul class="prices">
<li class="message" style="display: none;">
<div class="ajaxLoader"></div>
<div class="errorLabel" style="display: none;">There are currently no markets available for your selection.</div>
</li>
<li key="MM4.uk.174619476" meetingkey="mm4.uk.meeting.4933626" class="show">
<a href="#" class="info">Info</a>
<span class="markets">Manchester City/Crystal Palace</span>
</li>
<li class="hide" key="MM4.uk.174619477" meetingkey="mm4.uk.meeting.4933626">
<a href="#" class="info">Info</a>
<span class="markets">Crystal Palace/Manchester City (h)</span>
</li>
<li key="MM4.uk.174619478" meetingkey="mm4.uk.meeting.4933626" class="show">
<a href="#" class="info">Info</a>
<span class="markets">Total Goals</span>
</li>
<li key="MM4.uk.174619482" meetingkey="mm4.uk.meeting.4933626" class="show">
<a href="#" class="info">Info</a>
<span class="markets">Corners</span>
</li>
<li key="MM4.uk.174619485" meetingkey="mm4.uk.meeting.4933626" class="show last">
<a href="#" class="info">Info</a>
<span class="markets">Bookings</span>
</li>
</ul>
这是我用来获取span文本值的代码。
在某些页面上,li标记的属性发生变化,因此使用了三元运算符。
$(function() {
$(".info").on("click",function(){
console.log('this runs');
var key = (($(this).parent().attr("key") != undefined) ? $(this).parent().attr("key") :$(this).parent().attr("meetingkey"));
console.log(key);
var text = (($("li[key='" + key + "'] .markets").text() != undefined) ? $("li[key='" + key + "'] .markets").text() : $("li[meetingkey='" + key + "'] a:eq(1)").text());
console.log(text);
var logStr = 'Info Button, Meetings page, ' + text;
console.log(logStr);
});
});
如果我通过控制台部署它,这段代码工作得非常好。但是,当我通过Google tag Manager将其部署为自定义HTML标记时,它不起作用,即使代码已添加到页面中。
通过GTM交付后出现在页面上的代码
<script type="text/javascript" id="">
$(function() {
$(".info").on("click", function() {
console.log("this runs");
var a = void 0 != $(this).parent().attr("key") ? $(this).parent().attr("key") : $(this).parent().attr("meetingkey"),
a = void 0 != $("li[key\x3d'" + a + "'] .markets").text() ? $("li[key\x3d'" + a + "'] .markets").text() : $("li[meetingkey\x3d'" + a + "'] a:eq(1)").text();
console.log("Info Button, Meetings page, " + a);
ga("send", "event", "Info Button", "Meetings page", a)
})
});
</script>
更新:
GTM中的规则在所有页面上都被触发,我已经将其更改为事件等于gtm.dom并且GTM调试器声称标记正在被触发。
我在调试器中注意到的一件事是,它在结束脚本标记上做了一些奇怪的语法高亮显示。突出显示/脚本
为什么onclick侦听器在通过GTM交付时失败?
我决定改变我选择元素的方法
$(".info").on("click",function(){
到
$("body").on("click", ".info",function(){
我正在尝试做一个简单的标记,用于测量元素被单击的次数。 我遇到了困难,所以我想找一个视频来帮助我,因为标签管理器的布局已经改变了。 我在Udemy上遵循以下免费教程 https://www.udemy.com/google-tag-manager-advanced/ 特别是第8章按钮点击——这是一个免费的章节。它告诉我设置以下选项: 标签配置: 谷歌分析 跟踪ID:{{Tracking ID}}
我正在实施谷歌标签管理器为Android应用程序V4由我的营销团队要求为未来使用,我从来没有在GTM网站,所以我在这方面很天真。 我已经根据官方网站上的说明创建了帐户、容器和标签。我已经将tag manager与google analytics tracking id链接。我已经根据网站上的说明在我的应用程序中编写了代码,并将容器下载到原始文件夹中。 当我运行我的应用程序时,它会在logcat中给
我正在尝试学习如何在一个新网站上整合谷歌分析和定制事件跟踪。在研究它之后,我似乎无法理解Google Tag Manager和仅仅编写自定义事件跟踪代码之间的区别和关系。 Google Tag Manager是否只是一种更简单的跟踪信息的方法,而无需编写JS?
我正在一个客户的网站上设置谷歌标签管理器,但我在启动点击事件标签时遇到了麻烦。 我已将触发器设置为在按钮的CSS选择器上触发。 按钮本身有一些子元素,包括svg图标。单击svg时,单击会在数据层中注册,但不会触发标记。标记仅在我选择按钮本身时激发。 我还尝试在我自己的脚本中删除附加到这些按钮的事件侦听器,以防或阻止了它,但这并没有改变任何事情。 我的理解是,GTM侦听文档中出现的点击事件。如果是这
我有一个按钮,它有填充,但它是在一个跨度标签包装。我正在使用作为谷歌标签管理器中的触发器。 因此,如果我现在在DOM中单击span而不是按钮元素,那么span是它是被单击的元素,所以现在它不会得到id="gtm-id",因为它不是被单击的元素。 如何让谷歌标签管理器冒泡并从它的包装父元素中获取数据?
我必须在Magento网站上设置谷歌标签管理器,该网站上已经有谷歌分析跟踪。主要目标是通过谷歌标签管理器和通用分析来取代所有旧的跟踪。 我想知道实现这一目标的最佳途径。 在第一阶段,是否有可能保持现有的谷歌分析跟踪,同时设置谷歌标签管理器?例如,我希望能够在标签管理器中设置再营销活动。 还是我必须删除网站上所有相关的谷歌分析代码,并在谷歌标签管理器界面中创建新标签? 提前谢谢