Bonjour
Je n'ai pas de problème particulier mais juste une interrogation :
J'ai une chaine de caractère contenant le nom d'une fonction. Cette fonction reçoit en paramètre un objet et effectue un traitement (peu importe) :
Le challenge est de se servir de la chaine de caractère pour appeler la fonction sans oublier le paramètre param.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 var ch = "maFonction"; var param = document.getElementById('monElement'); function maFonction(obj) { alert(obj.nodeName); }
J'ai d'abord pensé à eval
Cela marche correctement sous FIREFOX (je n'ai testé que sur celui-là, mais peu importe encore une fois). J'ai trouvé une autre solution :
Code : Sélectionner tout - Visualiser dans une fenêtre à part eval(ch+"(param)");
qui fonctionne tout aussi bien mais est-ce vraiment 'légal' ? Cette méthode, même si la syntaxe est tout à fait valide, me paraît pas très propre ... Qu'en pensez-vous ? Laquelle est la meilleure ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part window[ch](param);
Partager