Foros del Web » Programando para Internet » Javascript »

Recursividad para cargar xml, como esperar a que este listo el navegador

Estas en el tema de Recursividad para cargar xml, como esperar a que este listo el navegador en el foro de Javascript en Foros del Web. Hola a tod@s, Me he visto con un problema que no se muy bien como solu cionar de forma efectiva. Disponemos de diferentes archivos .xml, ...
  #1 (permalink)  
Antiguo 14/03/2008, 11:59
 
Fecha de Ingreso: marzo-2008
Mensajes: 1
Antigüedad: 16 años, 1 mes
Puntos: 0
Recursividad para cargar xml, como esperar a que este listo el navegador

Hola a tod@s,

Me he visto con un problema que no se muy bien como solu cionar de forma efectiva. Disponemos de diferentes archivos .xml, que estan relacionados entre si y un fichero te lleva a uno o varios ficheros, la idea es recibirlos y cuando los tenga recoger una serie de datos. El siguiente código se encarga de la recepcion de los ficheros

function recursive_query(ID,deep,deep_flag){
EMAP[ID] = 0;
var uri = >>>>URL(ID)<<<<<;
var sc = document.createElement('script');
sc.type = 'text/javascript';
sc.src = '/cgi-bin/ACD.js?uri=('+uri+')';
document.getElementsByTagName('head')[0].appendChild(sc);
sc.onload=function(){
if(deep_flag < deep ){
deep_flag++;
for ( var k in EMAP ){
if(EMAP[k]==1){
recursive_query(k,deep,deep_flag);
}
}
}
};
*****************************************
}

mi problema es que no se como hacer que la funcion espere en la zona de los asteríscos hasta que la recepción de todos los ficheros se haya producido.

Notar que no sabemos el numero de ficheeros a recibir. En lo que estaba pensando es en una especie de evento que esperara a que el navegador no recibiera nada.

Abstenerse de la solucion windows.onload pq no funciona ya que window no esta cargando nada (esta comprobado que no funciona).

gracias de antemano,
un saludo
Joan
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:59.