2009-09-16 13 views
0

Est-il possible d'échapper du code XML au code ActionScript 3? Jetez un oeil à l'adresse suivante:Echapper du code XML vers le code ActionScript 3

<keyFrame name="myKey" delay="100ms" function="{function():void{soundCommand.execute()}}"></keyFrame> 

où le

function():void{soundCommand.execute()} 

partie doit être interprétée comme ActionScript 3. Donc, idéalement, si je fais une recherche l'attribut fonction de la balise image clé, je devrais obtenir un référence à la fonction.

Des idées? Merci d'avance!

PS: Aucun Flex n'est autorisé. :)

Répondre

2

L'instruction eval d'ActionScript est très, très simple par rapport à la version standard de JS, donc l'interprétation de cette instruction avec eval ne fonctionnera pas. Au lieu de spécifier une fonction anonyme, il serait plus facile de donner simplement un nom de fonction. Vous pourriez alors simplement rechercher cette fonction sur l'objet approprié et l'exécuter comme ceci:

function foo():void { 
    trace("run foo!"); 
} 

var testXML:XML = <keyFrame name="myKey" delay="100ms" function="foo"></keyFrame>; 

this[[email protected]](); 
Questions connexes