Bonjour a tous :)
Voila j'ai dev un petit flash en AS3 et j ai un problème de récupération de variable
via la section AC_FL_RunContent du html généré.
En fait je veux pouvoir assigner une bdd xml de manière dynamique.
Tous les éléments du flash se trouvent au même niveau (swf, html, xml) et les publish settings autorisent bien une navigation en local...
voici le code dans la page html:
Code HTML :
<script language="JavaScript" type="text/javascript">
AC_FL_RunContent(
'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0',
'width', '800',
'height', '600',
'src', 'suisse26',
'quality', 'high',
'pluginspage', 'http://www.adobe.com/go/getflashplayer',
'align', 'middle',
'play', 'true',
'loop', 'true',
'scale', 'showall',
'wmode', 'window',
'devicefont', 'false',
'id', 'suisse26',
'bgcolor', '#ffffff',
'name', 'suisse26',
'menu', 'true',
'allowFullScreen', 'false',
'allowScriptAccess','sameDomain',
'movie', 'suisse26',
'FlashVars','xmldata=mapdata.xml',
'salign', ''
); //end AC code
</script>
et voila mes lignes de script dans le flash :
Code ActionScript :
//// récupération de la valeur passée dans FlashVars pour le param xmldata
var xmlData:String = root.loaderInfo.parameters.xmldata;
var loader:URLLoader = new URLLoader();
var xml:XML;
... ... ...
loader.addEventListener(Event.COMPLETE, onLoaded);
function onLoaded(e:Event): void { xml = new XML(e.target.data); }
... ...
loader.load(new URLRequest(xmlData));
et il n arrive pas a faire la liaison
error 1009 cannot access a property or method of a null object reference
le script general est bon car si je met le xml en dur cela passe.
expl:
Code ActionScript :
var loader:URLLoader = new URLLoader();
var xml:XML;
loader.addEventListener(Event.COMPLETE, onLoaded);
function onLoaded(e:Event): void { xml = new XML(e.target.data); }
loader.load(new URLRequest("mapdata.xml"));
j ai de plus essaye avec
Code ActionScript :
var xmlData:String = MovieClip(this.root).loaderInfo.parameters.xmlData;
ainsi que
Code ActionScript :
var xmlData:String = MovieClip(this.root).loaderInfo.parameters.xmlData;
rien n y fait le flashvar ne passe pas.
Je pense que je fais une erreur de syntaxe dans l'action script mais je ne la vois pas
quelqu'un aurait une idée ?