Más problemas flash-XML
me estoy volviendo loco!!!!
tengo un archivo xml. Este:
<code>
<imagen>
<itm imagen="foto1.jpg" comentario="esta es la foto 01" />
<itm imagen="foto2.jpg" comentario="esta es la foto 02" />
<itm imagen="foto2.jpg" comentario="esta es la foto 03" />
</imagen>
</code>
y un código en flash con el que creo un movieclip vacio en el cual cargo una imagen que consigo de ese xml.
el código:
<code>
i=0;
//crea un clip de película vacio en los puntos 10, 10
_root.createEmptyMovieClip("miclip", 1);
setProperty(_root.miclip, _x, 10);
setProperty(_root.miclip, _y, 10);
// carga XML
galeria = new XML();
galeria.load("galeriaxml.XML");
//cuando carga el XML ejecuta interprete
galeria.onLoad = interprete;
galeria.ignoreWhite = true;
function interprete() {
MiArray = new Array();
MiArray = galeria.childNodes;
//el valor de la imagen
IImagen = this.firstChild.childNodes[i].attributes.imagen;
//carga la imagen
_root.miclip.loadMovie(IImagen,1);
//carga el texto
texto = this.firstChild.childNodes[i].attributes.comentario;
}
botonSiguiente.onRelease = function(){
//cuando pulsa el botón llama a interprete...
i++;
_root.interprete.call();
}
stop();
</code>
El asunto es que no me funciona...
cuando en vez de
<code>IImagen = this.firstChild.childNodes[i].attributes.imagen;</code>
escribo:
<code>IImagen = this.firstChild.childNodes[1].attributes.imagen;</code>
funciona perfectamente. Que pasa?
GRACÍAS! :)
black
he encontrado el fallo... hay que poner:
<code>IImagen = galeria.firstChild.childNodes[i].attributes.imagen;</code>
en vez de
<code>IImagen = this.firstChild.childNodes[i].attributes.imagen;</code>
lo mismo para el texto...
Pues ale! ya teneís una galería de imagenes en XML :)
poco a poco hago mis pinitos... :)
kassel
gracias black por el ejemplo, y mi enorabuena por habertelo solucionado.
ola :D
meddle
¿esto no te sobra?<code>MiArray = new Array();
MiArray = galeria.childNodes;</code>
black
si.. es verdad... lo puse en unas pruebas y se me olvidó quitarlo... :)
meddle
es que ademas de que sobran las dos, la segunda ya hace de MiArray un array con todos los elementos hijos de galeria. O sea, sobra doblemente ;)
por cierto, la estructura de ese XML no me parece demasiado correcta, demasiados atributos, yo usaria mas (sub)elementos. Y redefiniria el elemento imagen, ya que incluye a varias imagenes.