[FLASH MX 2004][XML]portée de variable
bonjour tlm,
j'ai un souci avec la porté des variables.
j'ai un movie clip dans lequel je crée un objet XML, sur le onLoad je "trace" differentes infos, et je les stockent dans des variables.
par la suite je voudrai appeler une fonction qui irai chercher des infos dans l'objet XML et qui utiliserai les variables stockées sur le OnLoad, mais mon objet XML n'est pas utilisable(undefined) et mes variables non plu!
voila le code en question:
la fonction qui me marche pas est donc getSourceNum()
dans cette fonction nbSource est undefined et sessionXML aussi.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
sessionXML = new XML();
sessionXML.ignoreWhite = true;
sessionXML.onLoad = function (ok) {
if(ok) {
//___ affiche le domaine
domaine = sessionXML.firstChild.attributes.domaine;
trace("Domaine: "+domaine);
//___ affiche le nbre de source dispo pour le domaine
nbSource = sessionXML.firstChild.childNodes.length;
trace("Nbre de source pour le domaine: "+nbSource);
//___ affiche le nbre de cible pour chaque source
for(i=0;i<nbSource;i++){
nbCible = sessionXML.firstChild.childNodes[i].childNodes.length;
nomSource = sessionXML.firstChild.childNodes[i].attributes.url;
trace("Source "+nomSource+":"+nbCible+" cible(s) dans le fichier");
}
}
}
/*
* renvoi le numero de la source dont l'url correspond a celle recherchée
*/
getSourceNum = function (s){
for(i=0;i<nbSource;i++){
urlSource = sessionXML.firstChild.childNodes[i].attributes.url;
trace(urlSource+" "+s);
if(urlSource == s) { return i; }
}
}
sessionXML.load("session01.xml");
trace(getSourceNum("/6")); |
je precise, c'est avec MX 2004.
pourriez vous me donner votre avis sur la question?
merki
++