Javascript 使用angular.js和google analytics跟踪href点击
我有一个允许用户下载文件的web应用程序。我动态生成aJavascript 使用angular.js和google analytics跟踪href点击,javascript,angularjs,google-analytics,angular-ui-router,Javascript,Angularjs,Google Analytics,Angular Ui Router,我有一个允许用户下载文件的web应用程序。我动态生成ahref=“xx”链接 我已经看过这篇文章,它解释了如何使用角度跟踪路线: 我如何跟踪用户下载的每个文件?< p>我不太熟悉谷歌分析的工作原理,但是你可以通过基本上创建你自己的中间人攻击(没有任何恶意)来跟踪用户下载(或任何其他动作)。 只需在下载链接中添加一个ng单击,即可启动一个承诺,该承诺将记录项目已下载的位置 <a href="..." ng-click="log()">Click here to download!<
href=“xx”
链接
我已经看过这篇文章,它解释了如何使用角度跟踪路线:
<>我如何跟踪用户下载的每个文件?< p>我不太熟悉谷歌分析的工作原理,但是你可以通过基本上创建你自己的中间人攻击(没有任何恶意)来跟踪用户下载(或任何其他动作)。 只需在下载链接中添加一个
ng单击
,即可启动一个承诺,该承诺将记录项目已下载的位置
<a href="..." ng-click="log()">Click here to download!</div>
$scope.log = function(){
//$http post or whatever you want
//Then resume normal click functionality
}
点击这里下载!
$scope.log=函数(){
//$http post或任何您想要的内容
//然后恢复正常的单击功能
}
您想使用ng单击进行此操作。我还将使用GA的事件跟踪来跟踪这个指标。下面是一个例子:
<a href="#" ng-click="logDownload()">Download</a>
$scope.logDownload = function () {
$window.ga('send', 'event', 'Download', 'File Name'); //This would log a GA Event
$location.path('your path to download the file'); //use this if you are linking to an angular route
};
$scope.logDownload=函数(){
$window.ga('send','event','Download','filename');//这将记录ga事件
$location.path(“下载文件的路径”);//如果要链接到角度路由,请使用此选项
};
使用将$window和$location注入控制器。使用$window保持代码的可测试性。最后,多亏了newg和David Grinberg,我才解决了这个问题 我没有使用$location.path()解决方案,因为我希望在一个新窗口中打开链接,目标为“”(u blank) html
<a href='{{ item.url }}' target='_blank' ng-click='trackDownload(item)'>
{{ item.name}}
</a>
$scope.trackDownload = function(item) {
if (!$window.ga) return;
$window.ga('send', 'event', 'download', item.full);
};