2014-05-15 91 views
3

我有一個fullpage.js jquery單頁網站。我希望谷歌分析能夠跟蹤有人通過滾動進入單頁網站的另一個「頁面」。 頁面沒有加載,但域更改,如... /#SECTION1,... /#第2節谷歌分析和jQuery fullpage.js

www.cima-ecuador.com

我使用analytics.js ...已經發布的帖子並沒有真正幫助我。

頭:

<script> 
    (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','http://www.google-analytics.com/analytics.js','ga'); 

    ga('create', 'UA-12543942-1', 'cima-ecuador.com'); 
    ga('require', 'displayfeatures'); 
    ga('send', 'pageview'); 
</script> 

我的身體部分是像

<div class="section" id="section0"> 
</div> 

<div class="section" id="section1"> 
</div> 
+0

SPA並不真正適合搜索引擎優化...您可以將分析代碼放入函數中,並在您每次輸入類似分析的章節時調用它('section1')。只是一個想法... – Geo

回答

2

繼承人我的解決方案。我所說的分析每次滑動荷載槽fullPage.js的標準功能:

afterSlideLoad: function(anchorLink, index, slideIndex, direction){ 

    (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-YOURANALYTICSID', 'domain.nl'); 
    ga('send', 'pageview', { 'page': document.location, 'title': document.location }); 

    } 

通知我使用自定義的GA(「發送」 ......如果你不,谷歌將跟蹤websitehits每一擊都會。是/。用JavaScript我當前的URL發送到分析。

2

改變了發送功能一點。

現在它顯示/頁,而不是 /http://www.example.com/#page。提高一點點。

ga('send', 'pageview', { 'page': anchorLink, 'title': anchorLink }); 

,使其成爲

afterSlideLoad: function(anchorLink, index, slideIndex, direction){ 

    (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-YOURANALYTICSID', 'domain.nl'); 
    ga('send', 'pageview', { 'page': anchorLink, 'title': anchorLink }); 

} 

,或者如果你不使用這個代碼幻燈片

afterLoad: function(anchorLink, index){ 

    (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-YOURANALYTICSID', 'domain.nl'); 
    ga('send', 'pageview', { 'page': anchorLink, 'title': anchorLink }); 

} 
1

感謝,偉大工程!我在afterSlideLoad版本中添加了「slideAnchor」,以便能夠在該部分中顯示正確的幻燈片。這將顯示爲

afterSlideLoad : function(anchorLink, index, slideAnchor, slideIndex){ 

(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-YOURANALYTICSID', 'domain.nl'); 
ga('send', 'pageview', { 'page': anchorLink, 'title': slideAnchor }); 

} 

活動頁面你會給該部分的訪客是和頁面標題會給你幻燈片。

4

它實際上是不夠的,如果只是<body>

<script type="text/javascript"> 
    (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', 'auto'); 
</script> 

後添加,然後在afterSlideLoad

 afterSlideLoad: function(anchorLink, index, slideAnchor, slideIndex) { 
      ga('send', 'pageview', { 'page': anchorLink, 'title': slideAnchor }); 
     }, 

否則(按其他的答案),你會被加載(下載)從analytics.js的文件谷歌每次加載新幻燈片。這個文件只需要一次。