繁体   English   中英

Google Analytics(分析):添加了onClick,但是链接已经具有onClick吗?

[英]Google Analytics: adding onClick, but link already has onClick?

我正在使用Google Analytics(分析)(通用),并且试图将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('send','event','Header','hover','Outdoor Barstools');”

如何在一个链接上获得两个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);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM