谷歌分析:添加onClick,但链接已经有onClick

Google Analytics: adding onClick, but link already has onClick?

本文关键字:onClick 链接 添加 谷歌      更新时间:2023-09-26

我正在使用谷歌分析(通用),我试图将onClick动作添加到链接,但已经有onClick脚本到位:

<a class="checkout-btn" href="/checkout-start" class="button_control" onclick="return $(this).getForm().sendRequest('shop:on_setCouponCode')">Check out</a>

但是我需要为GA添加这个脚本:

onClick = " ga("发送"、"事件"、"标题"、"徘徊","户外吧台用品");"

如何在一个链接上获得两个onClick事件?这可能吗?

最简单(虽然是错误的)的方法是使用分号,有两个命令:

onClick="ga('send', 'event', 'Header', 'hover', 'Outdoor Barstools'); return $(this).getForm().sendRequest('shop:on_setCouponCode')"

更好的方法是永远不要使用onClick HTML属性,而使用外部JavaScript文件绑定到ID的click()事件。这提高了代码的可维护性。

标记就变成:

<a class="checkout-btn" id="foo" ...

使用jQuery,并引用ID 'foo'标签:

$('#foo').click(function() {
    ga('send', 'event', 'Header', 'hover', 'Outdoor Barstools');
    return $(this).getForm().sendRequest('shop:on_setCouponCode');
});

这就是为什么直接在HTML中添加处理程序不是最佳选择的原因之一。如果你使用jQuery,你可以使用bind方法,例如:

$(".checkout-btn" ).bind( "click", function(evt) {
       console.log('oh yeah');         
});

如果你只是使用原始JavaScript,它是这样的:

document.getElementById("checkout-btn")
        .addEventListener("click", function(evt) {
       console.log('oh yeah');         
}, false);