Comunidad de diseño web y desarrollo en internet online

Bucle infinito

Citar            
MensajeEscrito el 21 Sep 2007 03:49 pm
Hola gente. Soy nuevo en AS y tengo un problemilla con un codigo. Al cargar en variables los datos que leo de un XML, llamo a la funcion para que me genere los nombres de las imagenes y mes coloca en un harray. Los datos que leo del XML los almaceno como variables globales y son "cantidad", "titulo" y "pathImg". El problema es que cuando llamo a la funcion para que me genere los nombres, se queda en un ciclo infinito. La condicion siempre me da true y no se a que es debido. He probado de hacer "casts" para cambiar el tipo de las variables pero nada.Os adjunto el codigo relevante para que me digais que es lo que hago mal. Estoy utilizando "Macromedia Flash Professional 8".

La funcion en question es generaNombreImagenes()

Código :

[color=blue]
//Variable con el nombre del fichero XML
_global.pathXML = "imagenes.xml";
//Creao un nuevo XML y establezco la propiedad ignoreWhite a true (valor por defecto es false).
_global.fichero = new XML();
_global.fichero.ignoreWhite = true;
//Variables donde guardare los datos cargados del XML
_global.cantidad;
_global.titulo;
_global.pathImg;
//Variable en la que almacenaré el nombre de las imagenes(estas deben ser de tipo imagen1.jpg, imagen2.jpg...)
_global.imagenes = new Array();

//Cargo el fichero XML con la variable global que indica el nombre del fichero
fichero.load(pathXML);

//Al cargar el XML, guardo los datos del fichero y hago un trace del objeto XML para comprobar
fichero.onLoad = function(success) {
   //No hace falta hacer referencia a que es una variable global(se puede suprimir el "_global")
   _global.cantidad = fichero.firstChild.childNodes[0].firstChild;   //Cantidad
   _global.titulo = fichero.firstChild.childNodes[1].firstChild;   //Titulo
   _global.pathImg = fichero.firstChild.childNodes[2].firstChild;   //Path de las imagenes
   //Genero los nombres de las imagenes y los guardo en un array global
   generaNombreImagenes();
};

//Funcion para generar los nombres de las imagenes
function generaNombreImagenes() {
   imagenes = new Array();
   var maximo = cantidad(Number);
   for (var i = 1; i <= cantidad; i++) {
      trace("("+ i +" <= "+maximo+")");
      //imagenes[i - 1] = "imagenes/imagen"+i+".jpg";
      //trace(imagenes[i - 1]);
   }
}
[/color]

Por starvarius

0 de clabLevel



Genero:Masculino  

mozilla
Citar            
MensajeEscrito el 22 Sep 2007 08:58 am
Vamos coño, que no creo que sea tan dificil... El post ha sido leido por 29 usuarios a estas alturas, que alguno me diga algo porfavor.

Por starvarius

0 de clabLevel



Genero:Masculino  

mozilla
Citar            
MensajeEscrito el 22 Sep 2007 09:17 am
:roll:

Por dmvalverde

150 de clabLevel



Genero:Masculino  

Extremadura

firefox
Citar            
MensajeEscrito el 22 Sep 2007 01:55 pm
algo

Por xyyy7

16 de clabLevel



 

Béisbol, Petróleo y Mujeres Bellas.- Venezuela (Maracay)

firefox
Citar            
MensajeEscrito el 22 Sep 2007 02:09 pm

starvarius escribió:

Vamos coño, que no creo que sea tan dificil... El post ha sido leido por 29 usuarios a estas alturas, que alguno me diga algo porfavor.


  1. Con esa actitud no ganas ni amigos ni ayuda.
  2. Esto no es un "Grupo de Respuesta Inmediata" ni la "Sala de Desarrolladores de Adobe", es una comunidad. No todo el mundo sabe de todo. La mayoría entra aquí para hacer preguntas.
  3. 29 personas en una cantidad muy pequeña para una comunidad que tiene más de 500 visitantes.
  4. Nadie está en la obligación de ayudar, menos si no sabe de qué se trata.
  5. La gente de aquí también tiene una vida.

Lamento comenzar con la descarga, pero honestamente me ha molestado mucho tu poco amable comentario.
Creo que tu problema no está en el bucle sino en como alimentas las variables. Estás asignándoles nodos de XML y no valores numéricos y/o texto. Para acceder al valor de un nodo debes colocar al final "value", si es el valor de un attributo "attributes.nombre_del_atributo".
Haz un trace de las variables antes de entrar en el bucle (de hecho, comenta el bucle de momento para que no entres en iteraciones infinitas). Si eso no funciona, postea algo del XML para hacernos una idea.

Por The Fricky!

Presidente

6168 de clabLevel

3 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell Héroes

Piccola Venezia...

firefox
Citar            
MensajeEscrito el 23 Sep 2007 02:14 am
The Fricky!, ni te molestes en esta gente. Son leechers y se enojan cuando no consiguen lo que quieren.

Para más información ver éste post.

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

firefox
Citar            
MensajeEscrito el 23 Sep 2007 02:23 am
Gracias Hernán Rivas, lo tendré en cuenta. :evil:

Por The Fricky!

Presidente

6168 de clabLevel

3 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell Héroes

Piccola Venezia...

firefox
Citar            
MensajeEscrito el 23 Sep 2007 02:39 am

starvarius escribió:

Vamos coño, que no creo que sea tan dificil... El post ha sido leido por 29 usuarios a estas alturas, que alguno me diga algo porfavor.

Tienes razón, no es tan dificil.
Aqui ya se ha dicho todo lo que se tenia que decir... cierro el post :swat:

Por Zguillez

BOFH

10744 de clabLevel

85 tutoriales
17 articulos
3 ejemplos

Genero:Masculino   Bastard Operators From Hell Héroes Team Cristalab Editores

BCN

firefox

 

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