javascript - 使谷歌分析跟踪单页应用程序的哈希 URL

标签 javascript jquery html google-analytics single-page-application

这是我最初的问题:Enable google analytics for single page site with # views

我接受了这个答案:https://stackoverflow.com/a/18626897/765498

但是,我发现,这个答案只是发送点击事件。我想要实现的是,让谷歌分析记录不同的哈希 url。

我读了这篇文章:tracking hash urls ,但不知道如何做到这一点。 我试过这个代码,似乎不起作用。我想要实现的是让不同的页面显示为“事件页面”。例如,/register.html#/p1 和/register.html#/p2 和/register.html#/p3 和/register.html#/p4

  <script stype="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXXXX-1']);
  _gaq.push(['_trackPageview', "/" + window.location.hash]);
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-XXXXXXX-1', 'xxxxxxxx.com');
  ga('set','page','/register.html')
  ga('send', 'pageview');


</script>   

最佳答案

您必须监听哈希变化。

$(window).on('hashchange', function() {
    _gaq.push(['_trackPageview', "/" + window.location.hash]);
});

关于javascript - 使谷歌分析跟踪单页应用程序的哈希 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18651126/

相关文章:

jquery - Chrome 奇怪的 (scaleY) 过渡行为

javascript - jQuery $ ('element' ).one() 来自多个位置的事件调用

php - 如何使用按钮选择列表的最新或下一个元素

php - 将实时站点迁移到 MVC 结构的策略?

javascript - Uncaught Error : [$injector:modulerr] when using ng-repeat

javascript - 如何在 Node.js 中使用迭代获取 JSON 值?

javascript - 无法在 DataTables 的 drawCallback() 中以编程方式选择行

c# - html Head 标记处的 runat ="server"导致 c# 嵌入式代码块无法转换为客户端代码

javascript - 如何从 nodeList 获取元素?如何使用byTagname/ByClassName?

javascript - 我正在尝试将 pdf 文件从 Node 服务器下载到 React 客户端,但是当我打开它时,它显示空白