Carregando scripts após o carregamento da página?

Eu trabalho com uma empresa de publicidade, onde marcamos certas páginas para rastrear atividades. Um cliente meu quer triggersr uma tag javascript para rastrear a atividade APÓS o carregamento completo da página (para evitar que o conteúdo da página seja carregado lentamente devido a lentidão nos tempos de carregamento de tags).

Uma tag de exemplo que deve ser carregada APÓS a página estar totalmente carregada é:

document.write('') 

Eu estava olhando para alguns threads de stackoverflow e me deparei com a implementação abaixo que eu acho que vai funcionar:

 window.onload = function(){  }; 

Eu testei isso na minha própria página e eu peguei a tag para triggersr, mas eu estou querendo saber se existem methods alternativos ou mais robustos, de preferência usando jquery de algum tipo.

Abaixo está uma implementação de amostra que o cliente tentou, mas parece quebrar a página:

  jQuery(window).load(function () {$('').insertAfter('#div_name');});  

Eu não tenho feito JQuery há algum tempo e estava esperando que eu pudesse obter alguma contribuição de outros membros aqui. Existe alguma outra maneira que eu possa chamar o script acima após o carregamento da página usando JQuery?

Obrigado,

Então, não tem como isso funcionar:

 window.onload = function(){  }; 

Você não pode deixar o HTML livremente no meio do javascript.


Se você tem jQuery, você pode simplesmente usar:

 $.getScript("http://jact.atdmt.com/jaction/JavaScriptTest") 

quando você quiser. Se você quiser ter certeza de que o documento terminou de carregar, você pode fazer isso:

 $(document).ready(function() { $.getScript("http://jact.atdmt.com/jaction/JavaScriptTest"); }); 

Em javascript simples, você pode carregar um script dinamicamente a qualquer momento que quiser:

 var tag = document.createElement("script"); tag.src = "http://jact.atdmt.com/jaction/JavaScriptTest"; document.getElementsByTagName("head")[0].appendChild(tag); 

A segunda abordagem é a correta para executar o código JavaScript após o término da carga da página – mas você não executa o código JavaScript, você inseriu o HTML simples.
A primeira coisa funciona, mas carrega o JavaScript imediatamente e limpa a página (para que sua tag esteja lá – mas nada mais).
(Plus: language = “javascript” foi preterido por anos, use type = “text / javascript” em vez disso!)

Para que isso funcione, você tem que usar os methods de manipulação do DOM incluídos no JavaScript. Basicamente, você precisará de algo assim:

 var scriptElement=document.createElement('script'); scriptElement.type = 'text/javascript'; scriptElement.src = filename; document.head.appendChild(scriptElement); 

Concentrando-se em uma das soluções jQuery da resposta aceita , $.getScript() é uma solicitação .ajax() disfarçada . Permite executar outra function no sucesso, adicionando um segundo parâmetro:

 $.getScript(url, function() {console.log('loaded script!')}) 

Ou nos próprios manipuladores da solicitação, ou seja, sucesso ( .done() – script foi carregado) ou falha ( .fail() ):

 $.getScript( "https://code.jquery.com/color/jquery.color.js", () => console.log('loaded script!') ).done((script,textStatus ) => { console.log( textStatus ); $(".block").animate({backgroundColor: "green"}, 1000); }).fail(( jqxhr, settings, exception ) => { console.log(exception + ': ' + jqxhr.status); } ); 
 .block {background-color: blue;width: 50vw;height: 50vh;margin: 1rem;} 
  
  

Esta é uma tag Atlas Action JS. O fornecedor deve ter fornecido alguns documentos ao cliente com algumas diretrizes sobre práticas recomendadas para implementar a tag na página de conversão. Você deve solicitar ao cliente para que este contato do documento ou do fornecedor os solicite diretamente.