Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.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 使用jQuery在href链接中附加onClick分析跟踪代码_Javascript_Jquery_Html_Google Analytics - Fatal编程技术网

Javascript 使用jQuery在href链接中附加onClick分析跟踪代码

Javascript 使用jQuery在href链接中附加onClick分析跟踪代码,javascript,jquery,html,google-analytics,Javascript,Jquery,Html,Google Analytics,我对JavaScript和jQuery非常陌生,我很难在我们使用jQuery重新设计的网站中的a链接中添加onClick Google Analytics tracking 我知道我可以做到这一点: <a href="#" onClick="_gaq.push(['_trackPageview', 'URL']);">link</a> 然而,每当我将onClick代码放到sharepointhtml字段时,它就会删除该代码,因此我需要一个脚本来为我执行该操作 到目

我对JavaScript和jQuery非常陌生,我很难在我们使用jQuery重新设计的网站中的a链接中添加onClick Google Analytics tracking

我知道我可以做到这一点:

<a href="#" onClick="_gaq.push(['_trackPageview', 'URL']);">link</a> 

然而,每当我将onClick代码放到sharepointhtml字段时,它就会删除该代码,因此我需要一个脚本来为我执行该操作

到目前为止,我有:

<a class="tracking" href="URL">Read PDF</a>

jQuery(document).ready(function($) {
    $(".tracking").click(function() {
        _gaq.push(['_trackPageview', 'url']);
    });
});

jQuery(文档).ready(函数($){
$(“.tracking”)。单击(函数(){
_gaq.push([''u trackPageview',url']);
});
});
当我检查时,点击的PDF不会显示在实时分析页面中。因此,我需要一些东西来确保当点击链接时,它会实时显示在分析跟踪器中。我可以使用一个脚本在a链接中添加onClick跟踪事件吗

请帮忙


谢谢

您可以使用以下代码生成页面视图:

$(document).ready(function() {
    $(".tracking").click(function() {
        ga('send','pageview','my-pdf-document')
    });
});
实际上,您可以传递更多的数据。见此处的官方文件:

更新

您完全可以像这样动态地使用href

ga('send','pageview', $(this).attr('href'));
或者甚至使用一些HTML-5,您可以使用如下链接:

<a href="/mypdf.pdf" class="tracking" data-title="mypdf-title">link</a>
编辑2

如果您仍在使用ga.js,那么可以这样做:

_gaq.push(['_trackPageview', $(this).attr('href')]);

您试图在链接上跟踪
\u trackPageview
有什么原因吗?通常,此onClick方法用于跟踪
\u trackEvent
。页面视图由您应该粘贴在站点的每个页面上的主跟踪代码处理是的。不幸的是,为了让谷歌分析“正确地”跟踪行为,我们需要这个小小的解决办法。默认情况下,Google Analytics不会跟踪PDF视图,如果我们不将PDF点击计算为“参与”,我们的跳出率指标将大大降低。我们通常会为swf文件中的项目点击以及其他不启动其他窗口的页面上操作保留跟踪事件。哦,我认为这更有意义,让我给你一个答案:)谢谢你!我添加了一个hitCallback来检查它是否真的发送了数据,但我没有收到任何警报。这是我的一段代码。我们还有多个PDF链接,需要在一个页面中进行跟踪,因此是否也可以使用this.href,这样我就不需要在每个PDF中重复此GA跟踪的多个实例?我更新了我的答案,以向您展示如何在跟踪中包含数据。对于您的JSFIDLE,回调不起作用,因为您需要加载Google js才能使您的
ga
方法工作,而且您不需要在
.ready(function($)
中加载
$
。为了更清楚地重新加载所需的库,您当然需要在页面上加载analytics.js(我想你会的)哦,对了。我在发送评论时意识到了这一点。无论如何,我认为我不能使用ga(“发送”,“页面视图”)代码,因为我们的母版页使用这个:var_gaq=_gaq | |[];_gaq.push(['''u setAccount',UA-XXXX-Y']);_gaq.push(['''u trackPageview']);在analytics.js中。我们无法编辑母版页以将其更改为ga,因此我们需要另一种解决方法:(然后您可以执行我刚才添加到我的答案中的操作
\u gaq.push(['''u trackPageview',$(this.attr('href'));
,这应该与ga.js一起工作
ga('send', 'pageview', {
    'page': $(this).attr("href"),
    'title': $(this).data("title")
});
_gaq.push(['_trackPageview', $(this).attr('href')]);