Jump to content


Photo

Solução Para Onload De Uma Página Carregada Em Ajax


  • Faça o login para participar
3 replies to this topic

#1 Silverfox é hipnos

Silverfox é hipnos

    Turista

  • Usuários
  • 29 posts
  • Sexo:Masculino

Posted 05/11/2006, 22:40

Eu encontrei uma script que pegava todas scripts de uma página carregada
em Ajax e fazia elas funcionarem
porem não funcionava onload...

Entaum criei essa script

//By SilverFox(Hipnos)
function ScriptOnload(texto){
var Emular = document.createElement('script');
//Busca inicio das funções
dividir = texto.split('onload="');
//Busca o fim
fim = dividir[1].split('"');
//Seta atributo para indicar linguagem da script
Emular.setAttribute('language','Javascript');
Emular.text = fim[0];
//Roda Onloads
document.body.appendChild(Emular);
}

Ajax é muito bom

  • Depois de refletir se usaria o naum
  • Cheguei a conclusão, Sim eu usarei Ajax
  • Descobri maneiras de usa-lo só uma vez, pra carregar varios arquivos sem prescisar
  • rodar minha script pra cada arquivo
  • Como rodar scripts de páginas carregadas por Ajax
  • Como usar fazer o onload de páginas carregadas por Ajax funcionarem
  • Ideias novas e novas soluções


#2 mascker

mascker
  • Visitantes

Posted 09/11/2006, 16:59

Viva,

Eu tb tenho esse problema.

Agora como é que implemento isso?

Em que local?

Tens exempplo?


Saudações

#3 Silverfox é hipnos

Silverfox é hipnos

    Turista

  • Usuários
  • 29 posts
  • Sexo:Masculino

Posted 12/11/2006, 15:24

<script>
function openAjax() { 
var Ajax; 
try {Ajax = new XMLHttpRequest(); // XMLHttpRequest para browsers mais populares, como: Firefox, Safari, dentre outros. 
}catch(ee) { 
try {Ajax = new ActiveXObject(" Msxml2.XMLHTTP"); // Para o IE da MS 
}catch(e) { 
try {Ajax = new ActiveXObject("Microsoft.XMLHTTP"); // Para o IE da MS 
}catch(e) {Ajax = false; 
} 
} 
} 
return Ajax; 
} 

function AbrirSite(){
if(document.getElementById) { // Para os browsers complacentes com o DOM W3C. 
var exibeResultado = document.getElementById("MeuDiv"); // div que exibirá o resultado. 
var Ajax = openAjax(); // Inicia o Ajax. 
Ajax.open("GET", "pagina.html", true);
Ajax.onreadystatechange = function() 
{ 
if(Ajax.readyState == 4) { // Quando estiver tudo pronto. 
if(Ajax.status == 200) { 
var resultado = Ajax.responseText; // Coloca o retornado pelo Ajax nessa variável 
exibeResultado.innerHTML = resultado;
ScriptOnload(resultado)
} else { 
exibeResultado.innerHTML = "Erro: ."; 
} 
} 
} 
Ajax.send(null); // submete
} 
}
</script>
<div id="MeuDiv"></div>

Tah ae um exemplo

Eu uso Ajax "a função openAjax()" só assim

Ajax é muito bom

  • Depois de refletir se usaria o naum
  • Cheguei a conclusão, Sim eu usarei Ajax
  • Descobri maneiras de usa-lo só uma vez, pra carregar varios arquivos sem prescisar
  • rodar minha script pra cada arquivo
  • Como rodar scripts de páginas carregadas por Ajax
  • Como usar fazer o onload de páginas carregadas por Ajax funcionarem
  • Ideias novas e novas soluções


#4 agito

agito

    Turista

  • Usuários
  • 53 posts
  • Sexo:Não informado
  • Localidade:Patrocinio-mg
  • Interesses:msn luiztarabal@agitopatrocinio.com.br

Posted 30/10/2007, 23:39

Tentei usar o script aqui, mas ele retornou

Erro: exibeResultado has no properties
Arquivo-fonte: http://localhost/pro...regao/test.html
Linha: 40

Nessa linha esta
exibeResultado.innerHTML = resultado;

Como procedo?




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq