zoukankan      html  css  js  c++  java
  • 最小化的 Google Analytics 代码

    一个简单的代码段,用于跟踪网站上的网页浏览量,而无需添加外部库。 也适用于使用react和vue.js等单页应用程序。

    Before

    Google Tag Manager + Analytics = 73kB

    After

    Snippet = 1.5kB

    <script>
      (function(a,b,c){var d=a.history,e=document,f=navigator||{},g=localStorage,
      h=encodeURIComponent,i=d.pushState,k=function(){return Math.random().toString(36)},
      l=function(){return g.cid||(g.cid=k()),g.cid},m=function(r){var s=[];for(var t in r)
      r.hasOwnProperty(t)&&void 0!==r[t]&&s.push(h(t)+"="+h(r[t]));return s.join("&")},
      n=function(r,s,t,u,v,w,x){var z="https://www.google-analytics.com/collect",
      A=m({v:"1",ds:"web",aip:c.anonymizeIp?1:void 0,tid:b,cid:l(),t:r||"pageview",
      sd:c.colorDepth&&screen.colorDepth?screen.colorDepth+"-bits":void 0,dr:e.referrer||
      void 0,dt:e.title,dl:e.location.origin+e.location.pathname+e.location.search,ul:c.language?
      (f.language||"").toLowerCase():void 0,de:c.characterSet?e.characterSet:void 0,
      sr:c.screenSize?(a.screen||{}).width+"x"+(a.screen||{}).height:void 0,vp:c.screenSize&&
      a.visualViewport?(a.visualViewport||{}).width+"x"+(a.visualViewport||{}).height:void 0,
      ec:s||void 0,ea:t||void 0,el:u||void 0,ev:v||void 0,exd:w||void 0,exf:"undefined"!=typeof x&&
      !1==!!x?0:void 0});if(f.sendBeacon)f.sendBeacon(z,A);else{var y=new XMLHttpRequest;
      y.open("POST",z,!0),y.send(A)}};d.pushState=function(r){return"function"==typeof d.onpushstate&&
      d.onpushstate({state:r}),setTimeout(n,c.delay||10),i.apply(d,arguments)},n(),
      a.ma={trackEvent:function o(r,s,t,u){return n("event",r,s,t,u)},
      trackException:function q(r,s){return n("exception",null,null,null,null,r,s)}}})
      (window,"XX-XXXXXXXXX-X",{anonymizeIp:true,colorDepth:true,characterSet:true,screenSize:true,language:true});
    </script>
    
    Setup: Just put the snippet into your html, replace 'XX-XXXXXXXXX-X' with your tracking id and you're ready to go. You can also add options for what information you want to track.
    
    Event: ma.trackEvent('Category', 'Action', 'Label', 'Value')
    
    Exception: ma.trackException('Description', 'Fatal')
  • 相关阅读:
    洛谷P3953 逛公园
    洛谷P1247 取火柴游戏
    洛谷P2024 食物链
    洛谷P2680 运输计划
    hdu 1495 非常可乐(bfs)
    poj3984 迷宫问题(简单的输出路径的bfs)
    Codeforces 729C Road to Cinema(二分)
    Codeforces Technocup 2017
    Codeforces Technocup 2017
    poj 2251 Dungeon Master(bfs)
  • 原文地址:https://www.cnblogs.com/huoxiao/p/10288945.html
Copyright © 2011-2022 走看看