Bonjour,
Je commence par vous donner mon code :
La classe précédente avec le méthode "getFunction" permet de créer des fonctions "dynamiquement". D'ailleurs elle reste à améliorer car j'utilise abusivement eval(). Si vous avez une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 manager = { getFunction : function(name, arguements, class) { if(typeof(class) != 'undefined') { if(typeof(arguements) == 'object') { eval(class + '.' + name + '(\'' + arguements + '\')'); return; } eval(class + '.' + name+ '()'); return; } if(typeof(class) != 'undefined') { eval(name + '(' + arguements + ')'); return; } eval(name + '()'); return; }, }.
La classe précédente, quant à elle, regroupe plusieurs fonctions donc dans cette exemple "closeButton".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 actions = { closeButton : function(el) { alert($(el).html()); }, }
Avec le code précédent, que j'ai simplifié, je créer une nouvelle fonction. J'arrive à obtenir la fonction avec en argument la variable "el" qui de coule de la ligne précédente.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $('*').live('click', function() { if($(this).attr('class') != '') { var el = $(this); manager.getFunction('closeButton', el, 'actions'); } return false; });
Dans la fonction appelée (closeButton), je fait un "alert($(el).html());" mais j'ai l'erreur suivante :
Pouvez-vous m'aider un peu car je ne vois pas pourquoi ça plante. De plus je ne suis pas encore assez bon en JS et accessoirement jQuery."uncaught exception: Syntax error, unrecognized expression: [object Object]"
Merci,
Bien cordialement.
Partager