atchoumdu51
Messages postés194Date d'inscriptionjeudi 1 janvier 2004StatutMembreDernière intervention16 juillet 2007
-
9 juil. 2005 à 09:09
cs_delivrance
Messages postés22Date d'inscriptionmercredi 1 décembre 2004StatutMembreDernière intervention15 juillet 2005
-
14 juil. 2005 à 17:39
Bonjour, j'ai deux problemes avec ma class en AS2 que voici:
class lecteurXML
{
var lien:String;
var flux:XML;
function lecteurXML(initLien:String)
{
lien = new String(initLien);
flux = new XML();
flux.onLoad = chargé;
flux.load(lien);
}
function chargé(success)
{
if(!success)
{
trace("marche pas");
}else{
trace("marche");
parser();
}
}
function parser()
{
trace("parse");
// récupérer les donées de flux dans un array
}
}
1- la fonction parser n'est pas apelée alors que flash affiche "marche"
2-si je coupe la fonction chargé (flux.onload = parser) je n'ai aucune donnée
Si quelqun avait une solution pour ces deux problemes...(le code
fonctionne avec include dans une frame mais je voudrais passer par une
classe pour réaliser des actions plus facilement)
cs_delivrance
Messages postés22Date d'inscriptionmercredi 1 décembre 2004StatutMembreDernière intervention15 juillet 2005 14 juil. 2005 à 13:53
alors deja tu appel une fonction sans mettre de parentheseflux.onLoad chargé; au lieu de flux.onLoad chargé(success); d autre part il me semble que ca marcherait mieux avec une syntaxe du genre
flux.onLoad = function (success){
chargé(success);
}
je sais c est un peu redondant mais j ai deja eu des problemes sans ca alors bon ...
cs_delivrance
Messages postés22Date d'inscriptionmercredi 1 décembre 2004StatutMembreDernière intervention15 juillet 2005 14 juil. 2005 à 14:01
j ai oublié je sais pas si tu ne devrais pas mettre ta fonction parser avant la fonction chargé par ce que si il lit le ficher normalement il appel une fonction qui n est pas encore definie
atchoumdu51
Messages postés194Date d'inscriptionjeudi 1 janvier 2004StatutMembreDernière intervention16 juillet 20071 14 juil. 2005 à 16:11
oki pour les parenthèses j'y penserait maintenant. En fait j'ai regardé
le script a tête reposée et voila mon erreur: la fonction parser()
était appelée pour "flux" et pas pour "lecteurXML" j'ai donc utlilisé
une autre méthode avec onEnterFrame (et des parentèses):
this.onEnterFrame = function()
{
if ( flux.loaded && goParser )
{
this.parser();
this.goParser = false;
}
}
ou goParser est une variable pou détecter "front montant" en quelque
sorte car je n'ai pas trouvé de fonction dans flash qui le réalisent.