Problème de preload Flash XML

batoui -  
 Vino -
Bonjour, mon problème est en rapport avec l'action script 2 et le XML

Voilà je désire preloader une image dans chacuns des 3 movieclip ("holder", "holder2"," holder3"), le problème est que mon code de preload fonctionne pour le 1er movieclip "holder" mais pour les autres ça ne precharge pas :/ voici mon code :

AS pour loadé le fichier XML :

// Création du XML
var xml:XML = new XML();
// On ignore l'espace blanc
xml.ignoreWhite = true;
// Appel de la fonction une fois loadé
xml.onLoad = function() {

 var nodes = this.firstChild.childNodes;
// Nombre d'items
 numOfItems = nodes.length;
 // Attachement des icons
 for (var i = 0; i<numOfItems; i++) {
//--------------------------------------------------------------------
// Chargement des images dans le MC
  holder.loadMovie(nodes[i].attributes.image1);
  holder2.loadMovie(nodes[i].attributes.image2);
  holder3.loadMovie(nodes[i].attributes.image3);
  
// Chargement du texte
  bloctext.myText.text = nodes[i].attributes.caption;
 }
};

// Chargement du fichier XML
xml.load("xml/images.xml");


AS du preloader :

    onEnterFrame = function () {
        loading = (_parent.holder,_parent.holder2,_parent.holder3).getBytesLoaded();
        total = (_parent.holder,_parent.holder2,_parent.holder3).getBytesTotal();
        percentage = Math.round((loading / total) * 100);
        if (isNaN(percentage) or (percentage == 0)) {
            percentage = 0;
            left.half._rotation = 0;
            right.half._rotation = 0;
        } else if ((percentage <= 50) && (percentage > 0)) {
            left.half._rotation = 0;
            right.half._rotation = 3.6 * percentage;
        } else if ((percentage > 50) && (percentage < 100)) {
            left.half._rotation = 3.6 * (percentage - 50);
            right.half._rotation = 180;
        }
        if ((percentage == 100) && (total > 100)) {
            left.half._rotation = 180;
            right.half._rotation = 180;
            if (this._alpha > 0) {
                this._alpha = this._alpha - 10;
            }
            if ((_parent.holder,_parent.holder2,_parent.holder3)._alpha < 100) {
                (_parent.holder,_parent.holder2,_parent.holder3)._alpha = (_parent.holder,_parent.holder2,_parent.holder3)._alpha + 10;
            }
        } else if (percentage < 100) {
            if (this._alpha < 100) {
                this._alpha = this._alpha + 10;
            }
            (_parent.holder,_parent.holder2,_parent.holder3)._alpha = 0;
        }
        _parent.bloctext._alpha = (_parent.holder,_parent.holder2,_parent.holder3)._alpha;
        percentageTxt = percentage;
    };

	
    stop();


et enfin le fichier XML en lui meme :

<?xml version="1.0" encoding="utf-8"?>
<IMAGES>
	<image 
		image1="img/img1.jpg" 
		image2="img/img2.jpg"
		image3="img/img3.jpg"  
		caption="Découvrez nos luxeuses chambres, adaptées à vos besoins et vos budgets blablablablablabla"/>
</IMAGES>


Voilà donc en gros je voudrais que mon preloader preloade chaques images contenues dans les 3 mc (ex : image1 preloadée dans mc1 image2 dans mc2 etc...)

Si quelqu'un peut m'aider c'est super ! Merci beaucoup, :)
A voir également:

2 réponses

raw
 
Bonjour,
raw007@caramail.com

Solution :

Changer
var nodes = this.firstChild.childNodes;
par :
var nodes = this.firstChild.childNodes[0];

et
holder.loadMovie(nodes[i].attributes.image1);
par
holder.loadMovie(nodes.childNodes[i].attributes.image1);
0
batoui
 
Bonjour,

Tout dabord merci pour la réponse :)

J'ai donc essayé cette modif mais cela ne marche pas en fait maintenant il n'affiche plus rien, aucunes des images ne s'affiche, comme si le fichier .xml ne se loadé plus alors qu'auparavant tout s'affiché correctement (le preloader preloadé le mc "holder" mais pas les 2 autres)

As-tu une solution pleaseee ?
0
Vino
 
Bonjour,

Moi aussi j'ai le même problème.
Quelqu'un aurait-il une solution ?
Ou batoui aurait tu trouvé depuis ?

Merci.
0