Comunidad de diseño web y desarrollo en internet online

Duda evento OnLoad!

Citar            
MensajeEscrito el 28 Ago 2006 05:11 pm
Hola a todos :). Aunque este es mi primer post, llevo tiempo leyendo este foro y haciendo algunos trabajos en Flash. Ahora me asalta 1 duda q me tiene algo paradillo, y si alguien me puede hechar 1 mano, pues sería perfecto. Estoy intentando hacerme 1 galeria de fotos dinamica. He estado ojeando los ejemplos que hay por aqui, y entre esos ejemplos y mi idea estoy intentando hacerla. No voy a usar XML, ni Base de Datos. A través del evento Onload de LoadVars() manejo de forma secuencial el numero de imagenes de mi galería; pero tengo 1 duda q no logré resolver:
No quiero usar una variable para saber el numero de imagenes de mi galeria, asi q la idea es recorrer toda la ruta donde esten las imagenes de forma secuencial hasta que no encuentre un fichero, ese será el final de la galería. Bueno pues con todo esto, este es el codigo que he probao, tan solo para recorrer la carpeta:

on (release){
var carga = new LoadVars();
var i = int;
i = 1;
carga.load("img/"+i+".jpg");
carga.onLoad = function(){
--trace(i);
if (carga.loaded == true){
trace(i+".jpg");
i++;
carga.load("img/"+i+".jpg");
}else{
delete this.onLoad;
};
};
}
Es algo sencillo pero q cuando no encuentra 1 fichero da error de archivo no encontrado. Yo pensaba que "borrando" el evento con delete this.onload la funcion pararía. Pero no es así. Seguto que tendrá algo que ver con que llame a la funcion load dentro de la funcion OnLoad, pero hasta ahora no se me ocurrió nada para solucionarlo. Sigo investigando.
Hasta pronto y gracias x el toston :oops: .
Salu2.

Por petroutsos

7 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 29 Ago 2006 01:07 am
Prueba con este, a ver que tal te funciona, lo que hace es ejecutar la funcion load cada vez que un archivo exista y cuando se tope con alguno que no exista simplemente elimina el objeto load vars.

Código :

on(release){
   var carga:LoadVars = new LoadVars();
   var i=0;
   carga.onLoad = function(se_cargo:Boolean){
      if(se_cargo){
         trace("Existe el archivo numero:" + i);
         i++;
         carga.load("img/"+i+".jpg");
      }else{
         trace("No existe el archivo numero:" + i);
         delete carga;
      }
   }
   carga.load("img/"+i+".jpg");
}


Saludos

Por heberto

263 de clabLevel

1 tutorial

1 ejemplo

 

Morelia, Michoacán

netscape
Citar            
MensajeEscrito el 29 Ago 2006 06:15 am
Gracias x responder. La verdad es q parece logico tu planteamiento. Se borra la variable carga y listo. Lo pruebo y posteo el resultado.
Salu2.

Por petroutsos

7 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 29 Ago 2006 06:30 am
Pues no ha habido suerte. Posteo el resultado suponiendo q existen los ficheros 0.jpg y 1.jpg:
--
Existe el archivo numero:0
Existe el archivo numero:1
No existe el archivo numero:2
Error opening URL "file:///C|/Documents%20and%20Settings/pccad1/Mis%20documentos/Mis%20imágenes/img/2.jpg"
--
Sigue dando el mismo error. Una vez el archivo no existe, devuelve el error de apertura de fichero: ¿Como puedo hacer para que cuando no exista el fichero, no me devuelva ese error?
Salu2.

Por petroutsos

7 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 29 Ago 2006 11:00 am
Bueno pues despues de mucho buscar, solo puedo decir q este error no condiciona para nada la ejecución del programa asi q seguiré por aqui y ya veremos.
Salu2.

Por petroutsos

7 de clabLevel



Genero:Masculino  

msie

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.