如何动态加载Google Analytics JavaScript? [英] How do I dynamically load Google Analytics JavaScript?

查看:122
本文介绍了如何动态加载Google Analytics JavaScript?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

没有使用任何其他JS框架(dojo,jquery等),如何动态加载谷歌分析的JavaScript以用于网页跟踪?



动态加载JS的典型做法如下:

  var gaJs = document.createElement(script); 
gaJs.type =text / javascript;
gaJs.src =http://www.google-analytics.com/ga.js;
document.body.appendChild(gaJs);
var pageTracker = _gat._getTracker(UA-XXXXXXXXX);
pageTracker._initData();
pageTracker._trackPageview();

但这不起作用。



ga.js文件没有及时加载 _gat._getTracker & _initData / TrackPageview 来运行。



关于如何正确动态加载ga.js的任何想法。



更新:好像有人试图在下面的链接中解决这个问题。不过,它适用于旧版Urchin代码,而不适用于Google Analytics。



关于如何使用ga.js而不是urchin.js的任何想法?

< a href =http://20y.hu/20070805/loading-google-analytics-dynamically-on-document-load.html =noreferrer> http://20y.hu/20070805/loading-google- analytics-dynamic-on-document-load.html

解决方案

您可以使用 HTML5 Boilerplate

 < ;! -  Google Analytics(分析):将UA-XXXXX-X更改为您网站的ID。 - > 
< script>
var _gaq = [['_ setAccount','UA-XXXXX-X'],['_ trackPageview']];
(function(d,t){var g = d.createElement(t),s = d.getElementsByTagName(t)[0];
g.src =('https:'== location .protocol?'// ssl':'// www')+'。google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script' ));
< / script>


Without using any other JS frameworks (dojo, jquery, etc), how would I dynamically load Google Analytic's javascript to be used on a web page for web-tracking?

The typical appropriate to dynamically loading JS is to do the following:

var gaJs = document.createElement("script");
gaJs.type = "text/javascript";
gaJs.src = "http://www.google-analytics.com/ga.js";
document.body.appendChild(gaJs);
var pageTracker = _gat._getTracker("UA-XXXXXXXXX");
pageTracker._initData();
pageTracker._trackPageview();

But that doesn't work.

The ga.js file isn't loaded in time for _gat._getTracker & _initData/TrackPageview to function.

Any ideas on how to properly dynamically load ga.js.

UPDATE: Seems like someone has attempted to address this problem at the following link. However, it's for use with the old Urchin code and not Google Analytics.

Any ideas on how to get this to work with ga.js instead of urchin.js?

http://20y.hu/20070805/loading-google-analytics-dynamically-on-document-load.html

解决方案

You could use this snippet from HTML5 Boilerplate.

<!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->
<script>
  var _gaq=[['_setAccount','UA-XXXXX-X'],['_trackPageview']];
  (function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
  g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
  s.parentNode.insertBefore(g,s)}(document,'script'));
</script>

这篇关于如何动态加载Google Analytics JavaScript?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆