Comunidad de diseño web y desarrollo en internet online

Tooltip dinámico desde xml

Citar            
MensajeEscrito el 03 Abr 2007 07:46 pm
Hola queridos amigos, tengo un gran problema que me quita el sueño y quería saber si alguien encuentra el error...
Tengo una pelicula con i botones que cogen su tooltip desde el xml, pero cuando cargo la pelicula en el tooltip me pone "undefined"

Este es mi código:

Código :

var obj_xml:XML = new XML();
obj_xml.ignoreWhite = true;
var valor:Array = new Array();

function cargarXML() {
obj_xml.load("datos.xml");}

for (var i = 1; i<=20; i++) {
   if (i>=10 && i<21) {g = String(Number(i))
   }else if (i<10){   g = "0"+String(Number(i))};
   var btn = _root.inst_llam["boton"+g];
   btn.id = g;
btn.onRelease = function() {galleryChoice(this.id);};
btn.onRollOver = function() {
   cargarXML();
   for (var h = 0; h<=20; h++) {
   valor[h] = obj_xml.firstChild.childNodes[h].firstChild.nodeValue;}
    cambia(valor[h]);
}
btn.onRollOut = function()   {para();}}



Cuando sustituyo

Código :

cambia(valor[h]);

por

Código :

cambia(valor[5]);

, por ejemplo, si que me muestra el valor del nodo 5 del xml en todos los botones, pero yo quiero que en cada uno muestre el suyo...
La funcion cambia dibuja el tooltip formateado y lo que va entre parentesis es el texto.
La funcion para borra el tooltip...

Estoy desesperado, no sé como hacerlo... :'(

Por embi

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 03 Abr 2007 10:25 pm
Necesitas usar el evento onLoad del xml, para saber cuándo se ha cargado. Búscalo en la ayuda de flash.

Por Zah

BOFH

4290 de clabLevel

27 tutoriales
5 articulos

  Bastard Operators From Hell Editores

Zaragoza, España

firefox
Citar            
MensajeEscrito el 04 Abr 2007 06:26 am
Seguro que es necesario??? Yo solo quiero que el xml actue en la funcion rollOver... no puedo sustituir tu xml.OnLoad por el evento miboton.OnRollOver???...

Creo que el fallo no está ahí, de hecho ya te estoy diciendo que al especificar el valor del array si que me muestra la salida, por lo que esta leyendo y cargando bien el xml, suponia que no necesitaba una funcion onload para verificarlo...

Muchas gracias por la respuesta, te agradecería que me que aclararas si la funcion xml.OnLoad es indispensable, y me imagino que te refieres a la sentencia condicional if (exito de carga) else (mostrar error)

Por embi

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Abr 2007 10:39 am

embi escribió:

Seguro que es necesario???




embi escribió:

Yo solo quiero que el xml actue en la funcion rollOver... no puedo sustituir tu xml.OnLoad por el evento miboton.OnRollOver???...


Sí, tendrás que cargar primero los datos (fuera del evento onRollOve) luego ya los mostrarás.

embi escribió:


Creo que el fallo no está ahí


Si tú lo dices...

Por Zah

BOFH

4290 de clabLevel

27 tutoriales
5 articulos

  Bastard Operators From Hell Editores

Zaragoza, España

firefox
Citar            
MensajeEscrito el 04 Abr 2007 02:28 pm
No queria pretender hacerme el listo, simplemente tenia esas convicciones erroneas, y mi intención era que alguien más experimentado me pudiera corregir.

Te agradezco tus respuestas, me he replanteado la historia y he visto que tienes razón, pensaba que el fallo no estaba ahí porque al poner un valor absoluto del array sí que me funcionaba, pero tienes razón...
Aun así, he logrado que funcione sin declarar la función xml.onLoad, mi problema era que estaba declarando variables locales y llamandolas en otra función (var valor=... y llamando a valor en btn.onRollOver)
Ahora ya me funciona todo bien, gracias a la gran ayuda de eliseo, que me ha hecho ver las cosas correctamente, al igual que tú.
Es por eso que desde ahora declararé la funcion xml.Onload ... (exito) y else (error); siguiendo tu consejo... jeje no pienso desperdiciar los consejos de un veterano !!!

Muchas gracias y un saludo.

Por embi

5 de clabLevel



 

firefox

 

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