Google Analytics agrega modo asíncrono

Google Analytics agrega modo asíncrono

Es mejor de lo que suena

Publicado el 02/12/09 a las 1:08 pm por F. Figueroa Fagandini

Cuando CHW era un sitio joven y yo un mozalbete inexperto, nuestras primeras experiencias con Google Analytics fueron insatisfactorias: el javascript del tracker demoraba mucho en cargar y el sitio se quedaba esperando. Por lo mismo siempre nos limitamos a otros contadores menos oficiales hasta que, con los años, la mejora en el tiempo de carga de G.A. y en la velocidad de nuestros planes de internet nos convenció de reponerlo.

Pues bien, resulta que no somos los unicos que han experimentado ese problema y, es más, la carga de javascript en general suele ser un dolor de cabeza para los desarrolladores porque impide la carga del resto de contenido y el despliegue definitivo de la página.

Google ha dado un paso para mejorar la velocidad de carga de su script sacando una versión asincrónica del mismo, el cual además se inserta dinámicamente en el documento. Más concretamente, el código viejo:

<script type=”text/javascript”>
var gaJsHost = ((”https:” == document.location.protocol) ? “https://ssl.” : “http://www.”);
document.write(unescape(”%3Cscript src=’” + gaJsHost + “google-analytics.com/ga.js’ type=’text/javascript’%3E%3C/script%3E”));
</script>
<script type=“text/javascript”>
var pageTracker = _gat._getTracker(”UA-1829516-1″);
pageTracker._initData();
pageTracker._trackPageview();
</script>

Se ha convertido en:

<script type=”text/javascript”>
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-1829516-1']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement(’script’);
ga.src = (’https:’ == document.location.protocol ? ‘https://ssl’ :
‘http://www’) + ‘.google-analytics.com/ga.js’;
ga.setAttribute(’async’, ‘true’);
document.documentElement.firstChild.appendChild(ga);
})();
</script>

Bueno, en realidad lo que hay ahí es el código de CHW,  el identificador cambia de un sitio a otro, jejeje.  Lo importante es que ahora no hay un <script> pegado en el código fuente de la página sino que se genera dinámicamente.

Se le dan parámetros al objeto usando el método _gaq.push, se configura como asíncrono para poder ser cargado simultáneamente a otros scripts (una propiedad HTML5, no todos los browsers lo soportan) y finalmente se añade al primer “child” del documento. En un documento bien formado esto equivale a añadirse a la etiqueta <head> pero hay documentos que no incluyen esa etiqueta asi que el snippet de Analytics en realidad se insertará donde pueda, flexibilidad total.

googleanalytics

Dicen en Google que con esto mejora no sólo el tiempo de ejecución sino también la precisión de los resultados. Yo ya lo estoy probando en el foro de CHW, y veré si las estadísticas no se van a la punta del cerro antes de proponer su uso generalizado.

Link: Google Analytics launches asynchronous tracking (Google Code)

CompárteloCompártelo

Publicado por F. Figueroa Fagandini el 2 de December 2009, con los tags , , , , en la categoría Noticias

Comenta este Artículo

Comenta este Artículo

Este artículo tiene 6 Comentarios. Deja tu Comentario!

Los Últimos comentarios del foro para esta noticia:

    Avatar
    Señor, solo sé que nada sé.

    Avatar
    mas de alguno va a reclamar que no entendió la noticia :zippyuy

    Avatar
    cambiarme a este nuevo código igual es complejo, al ser tan nuevo, igual es probable que lance un error y me cuente menos o más visitas. Prefiero que alguien lo pruebe antes.

    Avatar
    que se quejan, si amena esta contando algo que esta probando por si funka, si anda bien todo sera para mejor y si se da algún problema; bue se aviso

    Avatar
    no entendi nada XD

eXTReMe Tracker