2014-10-16 40 views
0

我想從外部JavaScript文件動態加載Google Analytics代碼。 每個HTML文件都會加載js文件,所以我認爲加載它會比手動將其粘貼到每個頁面更好。動態加載谷歌分析不工作

js文件的代碼如下所示:

// wait for page to load 
document.addEventListener("DOMContentLoaded", function() { 
    loadAna(); 
}); 

// load google analytics 
function loadAna(){ 

    (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', 'my UA key here', 'auto'); 
    ga('send', 'pageview'); 

    window.console && console.log("anaytics loaded to "+location.pathname.substring(1)); 
} 

控制檯顯示的功能是跑,但谷歌告訴我:「谷歌Analytics跟蹤代碼尚未在您的網站的主頁上檢測到」。

我在做什麼錯?

+0

在谷歌你在哪裏看到這個?這是在您的GA帳戶中嗎? – nyuen 2014-10-16 17:23:03

回答

0

您可以使用別人驗證的不同的,更安全的方法。例如,你可以使用一個外部腳本,你可以參考:

<script type="text/javascript" src="js/google-analytics.js" ></script> 

然後把你的代碼放到外部文件中。通過這種方式,您可以輕鬆地在多個頁面上包含相同的腳本而不會有重複。

舉個例子看看:

Using Google Analytics asynchronous code from external JS file

0

顯然,我只是不等待足夠長。 我檢查了第二天,分析工作。 它只是需要一段時間才能開始。