Question XML-Flash

Question XML-Flash - Flash/ActionScript - Programmation

Marsh Posté le 03-09-2005 à 23:03:54    

Bonsoir à tous,
 
J'ai une petite question à propos de la création dynamique d'éléments sous Flash...
 
Alors, je souhaiterai mettre en place une apge avec des liens vers d'autres sites Internet... via un fichier XML et Flash.
 
Mon XML se compose comme suit :
<liens>
 <site>
        <nom>site1</nom>
        <url>http://www.site1.com</url>
        <detail>Cool le site1</detail>
 </site>
 <site>
        <nom>site2</nom>
        <url>http://www.site2.com</url>
        <detail>Cool le site2</detail>
 </site>
 <site>
        <nom>site3</nom>
        <url>http://www.site3.com</url>
        <detail>Cool le site3</detail>
 </site>
 <site>
        <nom>site4</nom>
        <url>http://www.site4.com</url>
        <detail>Cool le site4</detail>
 </site>
</donnees>

 
Dans mon animation Flash, je souhaiterai afficher 3 liens par page avec la description à côté... Pour cela j'ai créé un MovieClip nommé "mctitre" comportant une zone de texte "titre" et une zone de texte nommée "detail".
 
Voici l'AS pour charger le premier noeud du fichier XML :
classe = new XML();
classe.load("fichier.xml" );
classe.ignoreWhite = true;
classe.onLoad = function(etatCharge) {
            if (etatCharge) {
                nom = classe.childNodes[0].childNodes[0].childNodes[0].childNodes[0];
  url = classe.childNodes[0].childNodes[0].childNodes[1].childNodes[0];
  description = classe.childNodes[0].childNodes[0].childNodes[2].childNodes[0];
                mctitre.titre.text=nom;
  mctitre.onPress = function() {
   getURL(url,_blank);
                }        
  detail.text = description;
           }  
};
 
 
Je souhaiterai savoir si ma méthode est correcte ET surtout... avoir de l'aide pour balayer tout mon fichier XML et créé à la volée les champs correspodants genre mctitre2 + titre2 + detail2 ... (option pour plus tard... ne mettre que 3 liens par page)... oui je suis un débutant ;-))))
 
Merci d'avance.
 
Jordel.

Reply

Marsh Posté le 03-09-2005 à 23:03:54   

Reply

Marsh Posté le 04-09-2005 à 11:14:59    

tout depent de comment tu veut t'organiser mais tu peut stocker toutes tes infos dans un array et les envoyer ensuite dans tes boutons suivant les sites a afficher (3 premiers, 3 suivants, etc...)
ce qui nous donne qq chose comme ca pour remplir l'array:

Code :
  1. var sites:Array = new Array();
  2. classe = new XML();
  3. classe.load("fichier.xml" );
  4. classe.ignoreWhite = true;
  5. classe.onLoad = function(etatCharge) {
  6.          if (etatCharge) {
  7.              sitenode =this.firstchild.firstchild;
  8.              while (sitenode.nodeName ==  "site" ) {
  9.                 nom = sitenode.childNodes[0];
  10.                 url = sitenode.childNodes[1];
  11.                 description = sitenode.childNodes[2];
  12.                 var site:Array = new Array(nom, url, description);
  13.                 sites.push(site);
  14.                 sitenode = sitenode.nextsibling;
  15.              }
  16.          } 
  17. };


a noter que j'ai pas verifié la structure du xml, ca doit marcher, mais si y un PB t'as qu'a faire, par exemple, trace(site).
 
je te laisse continuer un peu comme ca...
;-)


---------------
D3
Reply

Marsh Posté le 04-09-2005 à 13:32:53    

Merci beaucoup pour ta réponse... je vais continuer en ce sens...
 
J'espère que ma question n'a pas parut trop conne venant d'un débutant !!!
 
A+++

Reply

Marsh Posté le 04-09-2005 à 14:11:02    

Je viens de tester tout cela... mais j'ai un soucis...
En effet, rien ne s'affiche même dans le trace(sites) à part Undefined !!!
 
Voici mon code...

var sites:Array = new Array();  
classe = new XML();  
classe.load("fichier.xml" );  
classe.ignoreWhite = true;  
classe.onLoad = function(etatCharge) {  
         if (etatCharge) {  
             sitenode =this.firstchild.firstchild;  
             var j=0;
    while (sitenode.nodeName ==  "site" ) {  
                nom = sitenode.childNodes[0];  
                url = sitenode.childNodes[1];  
                description = sitenode.childNodes[2];          
    sites[j] = new Array(nom, url, description);  
    j = j+1;
                sitenode = sitenode.nextsibling;  
             }  
         }    
};
 
trace(sites);
trace(sites[0]);
 
for(i=0;i==sites.length;i++){  
    mctitre.titre.text=sites[i,0];
 mctitre.onPress = function() {
  getURL(sites[i,1],_blank);
 }        
 detail.text = sites[i,2];
}

Reply

Marsh Posté le 04-09-2005 à 14:16:34    

essaye comme ca et donne moi le resultat de la fenetre de sortie:

Code :
  1. var sites:Array = new Array();
  2. classe = new XML();
  3. classe.load("fichier.xml" );
  4. classe.ignoreWhite = true;
  5. classe.onLoad = function(etatCharge) {
  6.          if (etatCharge) {
  7.              trace("fichier.xml = "+this);
  8.              sitenode =this.firstchild.firstchild;
  9.              while (sitenode.nodeName ==  "site" ) {
  10.                 trace("sitenode = "+sitenode);
  11.                 nom = sitenode.childNodes[0];
  12.                 url = sitenode.childNodes[1];
  13.                 description = sitenode.childNodes[2];
  14.                 var site:Array = new Array(nom, url, description);
  15.                 trace("site = "+site);
  16.                 sites.push(site);
  17.                 sitenode = sitenode.nextsibling;
  18.              }
  19.          } 
  20. };
  21. trace("sites = "+sites);


---------------
D3
Reply

Marsh Posté le 04-09-2005 à 19:43:05    

Voici ce que j'obtiens en sortie...
Seule la variable sitenode contient quelque chose...
 

Code :
  1. sites =
  2. fichier.xml = <liens><site><nom>site1</nom><url>http://www.site1.com</url><detail>Cool le site1</detail></site><site><nom>site2</nom><url>http://www.site2.com</url><detail>Cool le site2</detail></site><site><nom>site3</nom><url>http://www.site3.com</url><detail>Cool le site3</detail></site><site><nom>site4</nom><url>http://www.site4.com</url><detail>Cool le site4</detail></site></liens>
  3. sitenode = <site><nom>site1</nom><url>http://www.site1.com</url><detail>Cool le site1</detail></site>
  4. site =
  5. sitenode = <site><nom>site2</nom><url>http://www.site2.com</url><detail>Cool le site2</detail></site>
  6. site =
  7. sitenode = <site><nom>site3</nom><url>http://www.site3.com</url><detail>Cool le site3</detail></site>
  8. site =
  9. sitenode = <site><nom>site4</nom><url>http://www.site4.com</url><detail>Cool le site4</detail></site>
  10. site =

Reply

Marsh Posté le 04-09-2005 à 19:50:23    

Je viens de remarquer aussi que dans les variables extraites du xml, j'ai les résultats suivants :
nom = <nom>Site1</nom>
 
Ne serait pas cela qui cause problème lors de l'insertion dans le tableau ???

Reply

Marsh Posté le 04-09-2005 à 20:35:13    

Code :
  1. var sites:Array = new Array();
  2. classe = new XML();
  3. classe.load("fichier.xml" );
  4. classe.ignoreWhite = true;
  5. classe.onLoad = function(etatCharge) {
  6.          if (etatCharge) {
  7.              trace("fichier.xml = "+this);
  8.              sitenode =this.firstchild.firstchild;
  9.              while (sitenode.nodeName ==  "site" ) {
  10.                 trace("sitenode = "+sitenode);
  11.                 sousnoeud = sitenode.firstchild;
  12.                 nom = sousnoeud.nodevalue;
  13.                 sousnoeud= sousnoeud.nextsibling;
  14.                 url = sousnoeud.nodevalue;
  15.                 sousnoeud= sousnoeud.nextsibling;
  16.                 description = sousnoeud.nodevalue;
  17.                 var site:Array = new Array(nom, url, description);
  18.                 trace("site = "+site);
  19.                 sites.push(site);
  20.                 sitenode = sitenode.nextsibling;
  21.              }
  22.          trace("sites = "+sites);
  23.          } 
  24. };


devrait fonctionner ?!
 
perso je met tous en attribue dans ce genre c'est plus facile a parser (du moins je trouve)
le XML:

Code :
  1. <lien url="http://www.google.com" nom="Google" description="Moteur de Recherche">


le code pour acceder:

Code :
  1. while (sitenode.nodeName ==  "lien" ) {
  2.    url = liennode.attributes.url ;
  3.    nom = liennode.attributes.nom;
  4.    description= liennode.attributes.description;
  5. }


---------------
D3
Reply

Marsh Posté le 04-09-2005 à 20:54:45    

Alors... j'ai changé mon fichier xml avec des attributs  ;)  
 
Et j'ai donc fait le smodifs avec dans le flash... mais je n'ai toujours rien dans mes tableaux site et sites !!!
 
Je ne vois pas ce qui ne fonctionne pas !!!

Reply

Marsh Posté le 04-09-2005 à 20:58:00    

Au cas ou...
 
Voici le code :

Code :
  1. var sites:Array = new Array();
  2. classe = new XML();
  3. classe.load("fichier.xml" );
  4. classe.ignoreWhite = true;
  5. classe.onLoad = function(etatCharge) {
  6. if (etatCharge) {
  7.  trace("fichier.xml = "+this);
  8.  sitenode =classe.firstchild.firstchild;
  9.  var i=0;
  10.  while (sitenode.nodeName == "site" ) {
  11.   nom = sitenode.attributes.nom;
  12.   url = sitenode.attributes.url;
  13.   description = sitenode.attributes.detail;
  14.   trace("nom = "+nom);
  15.   trace("url = "+url);
  16.   trace("detail = "+description);
  17.   sites = new Array(nom,url,description);
  18.   i=i+1;
  19.   trace("i = "+i);
  20.   sitenode = sitenode.nextsibling;
  21.  }
  22.  trace("sites = "+sites);
  23. };


 
Et le résultat en sortie...
[i]
fichier.xml = <liens><site nom="site1" url="http://www.site1.com" detail="Cool le site1" /><site nom="site2" url="http://www.site2.com" detail="Cool le site2" /><site nom="site3" url="http://www.site3.com" detail="Cool le site3" /></liens>
nom = site1
url = http://www.site1.com
detail = Cool le site1
i = 1
nom = site2
url = http://www.site2.com
detail = Cool le site2
i = 2
nom = site3
url = http://www.site3.com
detail = Cool le site3
i = 3
sites =  

Reply

Marsh Posté le 04-09-2005 à 20:58:00   

Reply

Marsh Posté le 05-09-2005 à 08:34:20    

le PB c'est que je t'ai induit en erreur avec sites (qui est un array comportant l'ensemble des liens) et site (qui est un array comportant l'ensemble des infos d'un site)
 

Code :
  1. var sites:Array = new Array();
  2. classe = new XML();
  3. classe.load("fichier.xml" );
  4. classe.ignoreWhite = true;
  5. classe.onLoad = function(etatCharge) {
  6.     if (etatCharge) {
  7.         trace("fichier.xml = "+this);
  8.         sitenode =classe.firstchild.firstchild;
  9.         var i=0;
  10.         while (sitenode.nodeName == "site" ) {
  11.             nom = sitenode.attributes.nom;
  12.             url = sitenode.attributes.url;
  13.             description = sitenode.attributes.detail;
  14.             var site:Array = new Array(nom, url, description);
  15.             trace("site = "+site);
  16.             sites.push(site);
  17.             i++;
  18.             trace("i = "+i);
  19.             sitenode = sitenode.nextsibling;
  20.         }
  21.         trace("sites = "+sites);
  22.     } 
  23. };


---------------
D3
Reply

Marsh Posté le 05-09-2005 à 19:10:59    

Bonjour,
 
Merci pour ton aide... J'avais bien pigé le truc en fait ;-) Je souhaitais simplement tester autre chose ;-)
 
Sinon voici le résultat obtenu avec ton dernier code :

Code :
  1. fichier.xml = <liens><site nom="site1" url="http://www.site1.com" detail="Cool le site1" /><site nom="site2" url="http://www.site2.com" detail="Cool le site2" /><site nom="site3" url="http://www.site3.com" detail="Cool le site3" /></liens>
  2. site =
  3. site =
  4. site =
  5. sites =


 
Là je commence à frapper mon c** par terre tellement je ne suis plus en phase ;-)
J'ai beau lire et relire les tutos que j'ai trouvé... je vois pas où se trouve le mystère mystèrieux !!!

Reply

Marsh Posté le 05-09-2005 à 20:14:47    

t'as fait le plus dur, le truc c'est que Flash est case sensitive:
nextsibling est different de nextSibling et firstChild est different de firstchild

Code :
  1. var sites:Array = new Array();
  2. var xml:XML = new XML();
  3. xml.ignoreWhite = true;
  4. xml.onLoad = function(charge) {
  5. if (charge) {
  6.  trace("fichier.xml = "+this);
  7.  sitenode = this.firstChild.firstChild;
  8.  trace("sitenode = "+sitenode);
  9.  var i = 0;
  10.  while (sitenode.nodeName == "site" ) {
  11.   nom = sitenode.attributes.nom;
  12.   url = sitenode.attributes.url;
  13.   description = sitenode.attributes.detail;
  14.   trace("nom = "+nom);
  15.   trace("url = "+url);
  16.   trace("detail = "+description);
  17.   sites[i] = new Array(nom, url, description);
  18.   i = i+1;
  19.   trace("i = "+i);
  20.   sitenode = sitenode.nextSibling;
  21.  }
  22.  trace("sites = "+sites);
  23. }
  24. };
  25. xml.load("fichier.xml" );


c'est con mais c'est comme ca, j'ai testé et ca marche (du moins chez moi)
j'avais rien vu faire parcque je t'aidais de memoire, mais des que j'ai copié/collé dans Flash, l'absence de coloration syntaxique m'a mis la puce a l'oreille.


---------------
D3
Reply

Marsh Posté le 05-09-2005 à 20:24:15    

Bon je me déclare "quiche de niveau 1" ;-)
 
Je teste et je te dis quoi !!!
 
Merci pour ton talent mon ami !!!

Reply

Marsh Posté le 05-09-2005 à 20:35:58    

J'soi etre vraiment mauvais....
 

Code :
  1. var sites:Array = new Array();
  2. var xml:XML = new XML();
  3. xml.ignoreWhite = true;
  4. xml.onLoad = function(charge) {
  5. if (charge) {
  6.  trace("fichier.xml = "+this);
  7.  sitenode = this.firstChild.firstChild;
  8.  var i = 0;
  9.  trace("sitenode = "+sitenode);
  10.  while (sitenode.nodeName == "site" ) {
  11.   nom = sitenode.attributes.nom;
  12.   url = sitenode.attributes.url;
  13.   description = sitenode.attributes.detail;
  14.   trace("nom = "+nom);
  15.             trace("url = "+url);
  16.             trace("detail = "+description);
  17.   sites[i] = new Array(nom, url, description);
  18.             i = i+1;
  19.   vartitre1 = nom;
  20.   trace("site = "+site);
  21.   sitenode = sitenode.nextSibling;
  22.  }
  23.  trace("sites = "+sites);
  24. };
  25. xml.load("fichier.xml" );


 
Ce code ne me donne rien... meme pas la fenetre avec les "trace" !!!

Reply

Marsh Posté le 06-09-2005 à 08:36:09    

fichier.xml enregistré avec le notepad en UTF-8:
 

Code :
  1. <liens>
  2. <site nom="site1" url="http://www.site1.com" detail="Cool le site1" />
  3. <site nom="site2" url="http://www.site2.com" detail="Cool le site2" />
  4. <site nom="site3" url="http://www.site3.com" detail="Cool le site3" />
  5. </liens>


 
chez moi ca marche...


---------------
D3
Reply

Marsh Posté le 06-09-2005 à 09:38:50    

Oui c'est ce que j'avais déjà fait...
 
Par contre j'ai modifié la ligne : var xml:XML = new XML(); en var xml = new XML(); et là, il me renseigne bien les "trace"...
 
Par contre toujours rien au niveau de la variable sites !!!!!
 

Code :
  1. var sites:Array = new Array();
  2. var xml = new XML();
  3. xml.ignoreWhite = true;
  4. xml.onLoad = function(charge) {
  5. if (charge) {
  6.  trace("fichier.xml = "+this);
  7.  sitenode = this.firstChild.firstChild;
  8.  var i = 0;
  9.  trace("sitenode = "+sitenode);
  10.  while (sitenode.nodeName == "site" ) {
  11.   nom = sitenode.attributes.nom;
  12.   url = sitenode.attributes.url;
  13.   description = sitenode.attributes.detail;
  14.   trace("nom = "+nom);
  15.             trace("url = "+url);
  16.             trace("detail = "+description);
  17.   sites = new Array(nom, url, description);
  18.             i = i+1;
  19.   sitenode = sitenode.nextSibling;
  20.  }
  21.  trace("sites = "+sites);
  22. };
  23. xml.load("fichier.xml" );


 
Résultat :
[i]fichier.xml = <liens><site nom="site1" url="http://www.site1.com" detail="Cool le site1" /><site nom="site2" url="http://www.site2.com" detail="Cool le site2" /><site nom="site3" url="http://www.site3.com" detail="Cool le site3" /></liens>
sitenode = <site nom="site1" url="http://www.site1.com" detail="Cool le site1" />
nom = site1
url = http://www.site1.com
detail = Cool le site1
nom = site2
url = http://www.site2.com
detail = Cool le site2
nom = site3
url = http://www.site3.com
detail = Cool le site3
sites =  
 
Sniffff

Reply

Marsh Posté le 06-09-2005 à 11:02:09    

heu...
est ce que par hasard dans la fenetre propriete de ton clip (clique n'imporrte ou en dehors de la scene) tu as:
 
Taille:[xxx X xxx pixels] Arrière-plan [couleur] Cadence [xx] ips
Publier:[parametre] Lecteur: 7 Actionscript:2 Profil: Paramètres Flash MX
 
parcque la, on dirait qu'il aime pas trops les declarations de variable propre a l'AS2
 
donc d'apres ce raisonnement soit tu fait comme je dit en AS2, sois tu remplace sites:Array et site:Array comme tu l'a fait pour le xml


---------------
D3
Reply

Marsh Posté le 06-09-2005 à 14:02:58    

A ce niveau là, j'ai :
Taille : 800x600 Arriere-plan : noir Cadence 12 i/s
Publier Flash player 6
 
Et c'est tout !!!

Reply

Marsh Posté le 06-09-2005 à 15:04:37    

c'est bien ce que je dit, t'as Flash MX (ou alors tu as ouvert un tuto Flash MX avec Flash Mx 2004) donc tes parametres sont Flash Player 6 et Actionscript 1.
Dans cette version il panne rien au declaration de variable de type:

Code :
  1. var mavariable:typedemavariable = affectation ou declaration d'objet;


deux solutions:
-> tu as Flash MX 2004: tu clique sur paramètre (en face de publier) et tu choisis Flash Player 7 et actionscript 2
-> tu n'as pas Flash MX 2004: tu declare tes variable sans les deux point et le type de variable


---------------
D3
Reply

Marsh Posté le 09-09-2005 à 16:00:44    

Hello...
 
J'ai viré les :typedemavariable aux tableaux et au XML et ça passe now ;-)
 
Merci !!!

Reply

Marsh Posté le 10-10-2005 à 11:57:04    

Voila mon code :
 
date_txt ="";
titre_txt ="";
texte_txt ="";
image_txt ="";
 
var dates:Array = new Array();  
var textes:Array = new Array();
var titres:Array = new Array();
var images:Array = new Array();
doc_xml = new XML();
doc_xml.ignoreWhite = true;
doc_xml.onLoad = function()
{  
 noeud = doc_xml.firstChild.childNodes[0];    
 var tabDate:Array = new Array(noeud.childNodes[0]);  
 var tabTitre:Array = new Array(noeud.childNodes[1]);  
 var tabTexte:Array = new Array(noeud.childNodes[2]);  
 var tabImage:Array = new Array(noeud.childNodes[3]);
 
 dates.push(tabDate);  
 titres.push(tabTitre);
 textes.push(tabTexte);
 images.push(tabImage);  
}
trace(titres);
doc_xml.load("historiqueXML.xml" );
 
Mon problème est que j'arrive bien à avoir ce que contient "noeud.childNodes[0]" (j'ai vérifier),mai ensuite je me retrouve sans aucune valeur ds mes tableau??? Pouvez vous m'aidez je galère grave. Sinon quand je récupère les valeurs des noeuds dans la fonction et que je les affiches sur mon site sa marche mais dès que je quitte la fonction j'ai un problème , plus rien !!!  
 
Je travaille avec FLASH 8
 
PLEASE HELP ME


Message édité par Boboash le 10-10-2005 à 11:58:11
Reply

Marsh Posté le 10-10-2005 à 13:59:30    

peut pas t'aider comme ca, mets des trace() un peu partout:

Code :
  1. trace(noeud.childNodes[0]);
  2. trace(tabDate);
  3. trace(dates);


et donne nous ce que tu as en sortie...
 
suivant t'as facon de ranger les infos dans ton xml tu as peut etre besoin de rajouter .nodeValue ou .attributes.trucmuche après ton childNodes[0]


---------------
D3
Reply

Marsh Posté le 10-10-2005 à 14:31:47    

alor cest vrai que je me suis un peu mal exprimer , j'ai mis des trace partt mai j'en est enlever pour vous montrer mon code.
 
mes trace qui marche :
trace(noeud.childNodes[0]);  
trace(tabDate);  
 
Celle qui marche pas et qui m'enerve lol:
trace(dates);  
 
Alor j'ai l'impression que des que je sort de la fonction mes valeur sont perdu bizarre???
 
sinon voila mon fichier XML :
 
<?xml version="1.0" encoding="UTF-8" standalone= "yes" ?>
<photoHistorique>
   <photo id="1">
     <date>Samedi 31 janvier 2003</date>
     <titre>Sounkai !!!</titre>
     <texte>Le groupe soundkai... </texte>
     <image>images/historique/sounkai.jpg</image>
  </photo>
  etc.........................
 
Et je veu pas mettre tous en attributs comme vous le faite???  
 
merci d'une réponse


Message édité par Boboash le 10-10-2005 à 14:33:13
Reply

Marsh Posté le 10-10-2005 à 17:21:51    

ques-ce que t'apelle marcher?
quand tu trace(noeud.childNodes[0]) il te donne ca: <date>Samedi 31 janvier 2003</date>
si oui ce que tu veut mettre dans tabDate c'est noeud.childNodes[0].nodeValue  me trompe-je ?
 
sinon essaye de remplacer push par une variable photo que t'incremente a chaque fois que tu change de noeud (ou tu te sert de l'id du noeud photo en cours)
genre dates[photo] = tabDate;


---------------
D3
Reply

Marsh Posté le 10-10-2005 à 17:35:38    

oui t'as bien compris, j'ai bien le résultat que tu dis
Je cour essayer !!
 
Malheuresement sa ne marche pas voila mes modif :
 
var tabDate:Array = new Array(noeud.childNodes[0].nodeValue);
trace (tabDate);
dates[photo]= tabDate;
 
et en dehors de la fonction
 
trace(dates);
 
Maintenant, je n'ai plus rien dans tabDate et toujours rien dans "dates".  
 
Mais si je met trce(dates) dans ma version et à l'intérieur de la fonction, il me renvoie ce qu'il faut, c'est vraiment chelou je comprend pa, il fau que je sorte les valeurs de la fonction !!!
 
En tout cas merci de vos réponses


Message édité par Boboash le 10-10-2005 à 18:51:31
Reply

Marsh Posté le 10-10-2005 à 19:47:34    

D'apré toutes les sources que je voi, aucun ne sort les donnée de la fonction, si j les sort pas je voi pas bien comment les exploiter pour que a l'appui sur un bouton les textes et images change......

Reply

Marsh Posté le 11-10-2005 à 11:44:09    

forcement tu trace(titre) avant de charger ton fichier xml, alors bien sur l'interpreteur lit le code de haut en bas mais il ne peut pas deviner ce que contient le fichier xml...
 
rajoute une condition charge comme dans l'exemple que je donne à jordel et une fois le chargement finis (apres la boucle dans le xml) envoi le timeline sur une autre frame...
 
la et la seulement tu pourras pester si tes arrays sont vide
 
petit truc pour tester tes variables, fonction, etc...:

Code :
  1. for (i in _root) {
  2.    trace("  "+i+" -> "+_root[i]);
  3. }



---------------
D3
Reply

Marsh Posté le 11-10-2005 à 12:13:14    

Justement, j'ai lu pas mal de choses qui disai de faire comme ca. Mais j'halucine t'as raison du coup la sa marche, comment sa me stress le code !!!!!!!!!!
 
Et pendant que j'y suis lol, si il y en a d'autre qui font comme moi ,quand je fait noeud.childNodes[0].nodeValue il me retourne null, mais si je fais noeud.childNodes[0].childNodes il me renvoi ce qu'il y a à l'intérieur de <image>Yes I</image> (ex : "Yes I" ) sa c'est cool !!! me demander pas pourqoi je serai pas lol
 
Merci a toi MechKurt, c'est grace a toi que ma gallerie photo marche !!!
 
BIG BIG UP pour MechKurt


Message édité par Boboash le 11-10-2005 à 12:35:13
Reply

Marsh Posté le 11-10-2005 à 12:39:29    

pour le nodeValue laisse tomber c'est pas tres important:
http://livedocs.macromedia.com/fla [...] 01904.html
 
pour tes variables soit disant vide en dehors de la fonction je suspecte qu'au moment ou tu les testes elle sont vide, car tu les testes avant qu'elle ai été initialisé!
 
donc tu prend le code qui est ici:
http://forum.hardware.fr/hardwaref [...] m#t1192693
tu le met a ta sauce dans la frame1 (et tu rajoute un _root.stop(); )
 
en dessous du trace("sites = "+sites); (qui serat devenu trace("tabDate= "+tabDate);) tu rajoute _root.nextFrame();
 
et dans la frame suivante tu mets ca:

Code :
  1. for (i in _root) {
  2.     trace("  "+i+" -> "+_root[i]);
  3. }


 
si ca ne marche toujours pas tu pose ton .fla en ligne et je regarde quand j'ai une minute


Message édité par mechkurt le 11-10-2005 à 16:13:41

---------------
D3
Reply

Marsh Posté le 11-10-2005 à 13:16:26    

si c'est bon sa marche merci a toi

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed