Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当通过google tag manager交付时,点击不工作的jquery_Javascript_Jquery_Google Tag Manager - Fatal编程技术网

Javascript 当通过google tag manager交付时,点击不工作的jquery

Javascript 当通过google tag manager交付时,点击不工作的jquery,javascript,jquery,google-tag-manager,Javascript,Jquery,Google Tag Manager,当Google Tag Manager提供JQuery on click功能时,该功能不起作用 我已经研究了这些问题,并将我的代码包装在一个文档中,并使用了更新的.on('click',function(){})语法,但仍然不起作用 我正在尝试添加一个jquery on click函数,将数据发送到Google Analytics 当有人点击带有一类信息的锚定标签时。我使用jquery导航到它与一类市场的同级跨度,并获取它的文本值 由于有多个锚定标记具有相同的类,并且我需要特定的文本值,因

当Google Tag Manager提供JQuery on click功能时,该功能不起作用

我已经研究了这些问题,并将我的代码包装在一个文档中,并使用了更新的.on('click',function(){})语法,但仍然不起作用

我正在尝试添加一个jquery on click函数,将数据发送到Google Analytics

当有人点击带有一类信息的锚定标签时。我使用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>
如果我通过控制台部署它,这段代码工作得非常好。但是,当我通过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>

$(函数(){
$(“.info”)。在(“单击”,函数(){
console.log(“此运行”);
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();
控制台日志(“信息按钮,会议页面,”+a);
ga(“发送”、“事件”、“信息按钮”、“会议页面”,a)
})
});
更新:

GTM中的规则在所有页面上都被激活,我将其更改为event equals GTM.dom,GTM调试器声称标记被激活

我在调试器中注意到的一件事是,它在结束脚本标记上做了一些奇怪的语法高亮显示。以橙色突出显示/script>。我想不出它为什么会那样做


为什么onclick侦听器在通过GTM交付时失败?

我通过改变从中选择元素的方法来解决这个问题

$(".info").on("click",function(){


您的标记的触发规则是什么?您是否尝试过在event=gtm.dom时触发?我在所有页面上都设置了它,并更改为event=gtm.dom。GTM调试器声称它正在加载,脚本块正在写入页面中,但当我单击图标时仍然没有任何内容。
$(".info").on("click",function(){
$("body").on("click", ".info",function(){