Carregar Google Analytics após o carregamento da página

Canal: JavaScript  |  Autor: Jonathan Lamim Antunes  |  Publicado em: 17/03/2009  |  Views: 1.852

Muitas vezes nos deparamos com uma página que demora a carregar por causa do Google Analytics. Apesar da quantidade e qualidade dos servidores do Google, muitas vezes, por diversas razões ele fica lento. Ele também afetas páginas que usam frameworks de JavaScript, como o JQuery, pois ele (Google Analytics) só carrega os elementos da página depois que foi carregado totalmente. O grande problema é que não podemos guardar no nosso servidor o arquivo ga.js ou o arquivo urchin.js, que são solicitados aos servidores do Google para o carregamento do Google Analytics.

Vamos resolver esse problema de uma maneira muito simples, carregando o Google Analytics somente depois que todos os elementos da página forem carregados.

Isso dá uma grande vantagem, pois se o Google Analytics fica lento de uma hora para outra, a sua página não vai ficar. Você deve estar se perguntando: "Mas como minha página não vai ficar lenta se de um jeito ou de outro eu terei que carregar o Google Analytics?"

A resposta é: Antes de carregar o Google Analytics você carregará todo o conteúdo da sua página, e somente depois de tudo carregado é que o Google Analytics será carregado.

Todas as inclusões de arquivos js devem ser feitas no final, antes da tag %3C/body%3E, conforme a norma de aceleração de velocidade de carregamento de páginas web de YSlow, e não entre as tags %3Chead%3E...%3C/head%3E, como feito pela maioria.

E logo após inserir todas as bilbiotecas e arquivos js, introduzimos o código do Google Analytics, que será o último código javascript a ser inserido na página.

%3Cscript type="text/javascript"%3E
$(document).ready(function() {
$.getScript("http://www.google-analytics.com/ga.js",function(){
if(typeof(_gat) == "object") {
var pageTracker = _gat._getTracker("UA-1806963-8");
pageTracker._initData();
pageTracker._trackPageView();
}
});
});
%3C/script%3E

Dentro desse bloco de código, substitua UA-1806963-8 por sua ID do Google Analytics.

ANTECIPANDO UMA DÚVIDA

Fazendo dessa forma, que garantia teremos de que a visita será contabilizada? Se um usuário entra na página, mas antes que o script do Google Analytics seja executado ele passa para outra página, a visita será contabilizada?

É possível que não seja contabilizada, mas as perdas variam entre 2% e 5%, em casos em que o Google Analytics está muito lento. Não se deve utilizar somente o Google Analytics como medidor único de acessos. É preferível perder algumas visitas no contador do que ter todo o código bloqueado até que o Google Analytics seja carregado.

Até a próxima!

Creative Commons Esta obra está licenciada sob uma Licença Creative Commons. Você pode copiar, distribuir, exibir, executar, desde que seja dado crédito ao autor original (Citando nome do autor, data, local e link de onde tirou o texto). Você não pode fazer uso comercial desta obra. Você não pode criar obras derivadas.
Vote no artigo:
NR. DE VOTO(S): [2]

Compartilhe:

[x] Fechar Preencha os campos abaixo para indicar esta página:
Seu nome:
Seu e-mail:
Nome do indicado:
E-mail do indicado:
Deixe uma mensagem:
Anti-spam:

(nova imagem)
Preencha o que vê:
Twitter diHITT Facebook delicious envie por e-mail comentar

comentarComentários:

Preencha o formulário para comentar:

[x] Fechar
Nome:*
E-mail:* (não será exibido)
Site: (http://)
Comentário:*
Anti-spam:

(nova imagem)
Preencha o que vê:

Deseja receber as respostas dos comentários

Publicado em:
17/03/2009 - 11:36
Dica legal para desenvolvedores, apesar de até mesmo o Google solicitar que o código do Google Analytics seja inserido no final da página, muitos desenvolvedores ainda colocam no topo, dentro da tag <head>.