自动跟踪Google Analytics中的按钮点击次数

时间:2016-01-14 11:29:17

标签: javascript jquery button google-analytics event-tracking

我办公室的技术负责人发誓说,以下是可能的,但不知道具体如何。我的研究结果空洞,但他正在寻找的结果是在Google Analytics中自动跟踪按钮点击(而不是锚点)而不为每个按钮分配功能

我一直认为,语义HTML结构的最佳实践是链接(锚点)用于转到新页面,而按钮(和其他输入)用于更改现有页面上的元素(除了少数例外)。链接点击固有地在Google Analytics中注册为PageViews,而不为每个锚点使用额外的JavaScript;一个无可争议的事实。我们知道用户将进入新页面;这就是锚标签在语义上正确使用的原因。

按钮不是(据我所知,除非有人在这里显示我),而不是通过JavaScript函数推送事件,例如:

ga('send', 'event', 'Button Click', 'Open Menu');

现在使用JavaScript(或者在本例中为jQuery),我可以全局跟踪每个按钮点击:

$('body').on('click', 'button', function(e){
    e.preventDefault();
    ga('send', 'event', 'Button Click', 'Open Menu');
});

但这是一大堆潜在无意义的数据。然后我必须首先设置变量以读取每个按钮,以便发送的数据有意义。例如:

$('body').on('click', 'button', function(e){
    e.preventDefault();
    //check if the data-event attribute was set
    if($(this).data('event')){
        ga('send', 'event', 'Button Click', $(this).data('event'));
    };
});

但他仍然坚持认为我的JavaScript代码中存在阻止按钮固有地发送点击的地方,我不需要做所有这些额外的工作。最初,我用return false;结束了所有按钮事件,我后来读到这些事件并不是跟踪时的最佳做法,因此所有这些都被删除了。仍然没有变化。还有什么我应该检查的,以便在没有JavaScript的情况下让按钮注册,或者这是不可能的,因为我最初怀疑?

1 个答案:

答案 0 :(得分:-2)

删除e.preventDefault();串