Ieri Google ha annunciato la possibilità di inserire all’interno delle pagine web un nuovo tipo di codice javascript per il tracking degli accessi tramite Google Analytics:
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_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>
dove ovviamente al posto di UA-XXXXX-X va inserito il codice del sito da monitorare.
Il nuovo codice rappresenta un importante miglioramento per le performance di visualizzazione delle pagine: spesso capita che il caricamento della pagina non venga completato immediatamente a causa proprio del codice di tracking precedente (chi non ha mai visto almeno una volta il caricamento di una pagina bloccarsi sulla richiesta verso “www.google-analytics.com”). Quest’ultimo infatti viene eseguito in modalità bloccante dal browser, ritardando l’esecuzione delle successive istruzioni javascript che, soprattutto con l’utilizzo delle moderne librerie javascript tipo jQuery o Prototype, spesso vengono eseguite solo al completo caricamento del documento .
Il nuovo codice di tracking sfrutta una metodologia per l’esecuzione asincrona descritta qui, sostanzialmente si tratta di inserire il tag <script> relativo al tracker all’interno della pagina mediante l’istruzione javascript document.createElement e di appenderlo all’albero DOM della pagina mediante l’istruzione document.documentElement.firstChild.appendChild, dopo aver settato l’attributo async a true.
Un piccolo passo per l’uomo…







