Voila j'ai une fonction XMLimage.onLoad = function(){ .........}. A l'interieur le tableau tabImage (défini à l'exterieur) se remplit de mes éléments venant d'un fichier XML. Je cherche juste à recupérer la taille de ce tableau en dehors de la fonction. Mais c'est impossible je ne comprends pas, Mon tableau est bien défini en dehors et il se remplit correctement puisque le script fonctionne.
Pour plus de précisions voila mon code:
Merci d'avance
tabimage = new Array();
afficheImages();
calculNbPages();
trace(taille);
function afficheImages(){
XMLimage = new XML();
//ici on dit au swf de ne pas prendre en compte les espaces entre les balises (c'est juste histoire d'avoir un xml bien organisé
XMLimage.ignoreWhite = true;
XMLimage.onLoad = function(){
// on masque le mc de base
_root.cadre._visible = 0;
//on définit le nom d'image par ligne
colonne = 1;
//on remplit notre tableau avec toutes les balises comprises dans <album></album>
tabimage = XMLimage.firstChild.childNodes;
taille=tabimage.length;
//on va boucler autant de fois qu'il y ai de balises photo
for(i; i<tabimage.length & i<j; i++){
//on duplique notre mc
_root.cadre.duplicateMovieClip("cadre"+i,i*1+5000);
//On cree deux variables: une pour les teens et l'autre pour l'image taille réelle
teen="teens/"+_root.tabimage[i].attributes.urlimage;
_root["cadre"+i].reelle=_root.tabimage[i].attributes.urlimage;
//on attache la photo au mc "glu" (celui qui a une position bizarre)
_root["cadre"+i].glu.loadMovie(teen);
//On cree le lien vers la photo taille réelle
_root["cadre"+i].onRelease = function(){
lv.image="thisreelle";
lv.send("texte.txt");
}
//On ajoute un effet de transparence au survol du mc
_root["cadre"+i].onRollOver = function(){
this._alpha=60;
}
_root["cadre"+i].onRollOut = function(){
this._alpha=100;
}
// on positionne les images et leur cadre de la première ligne
if(i<colonne){
_root["cadre"+i]._y = 70;
_root["cadre"+i]._x = 130*i+90;
//on positionne les autres lignes par rapport a la précédente
}else{
_root["cadre"+i]._y = Number(_root["cadre"+(i-colonne)]._y)+110
_root["cadre"+i]._x = _root["cadre"+(i-colonne)]._x;
}
}
}
XMLimage.load("album.xml");
stop();
}
function calculNbPages(){
_root.page_mc._visible=false;
for(k=0;k<tabimage.length;k++){
_root.page_mc.duplicateMovieClip("page"+k,k+6000);
_root["page"+k].nPage=k+1;
_root["page"+k].nPage_txt.variable=nPage
_root["page"+k]._y = 580;
_root["page"+k]._x = 30*k+20;
_root["page"+k].onRelease = function() {
i=i+5;
j=i+5;
trace("i="+i+" j="+j);
gotoAndPlay(2);
}
}
}