Bonjour à tous les Alsanautes.
Le sujet est un peu bizarre et pas accessible de prime abord mais bon...
J'ai terminé ma «formation» en jQuery et j'ai voulu faire un petit plugin pour m'exercer un peu.
Le plugin doit effectuer certaines tâches en fonction des paramètres (événement particulièrement) et c'est là que tout bloque
Explication :
-> si l'utilisateur veut que l'action se produit au survol, il passe 'hover' en paramètre et le plugin effectue 2 actions (une au survol et l'autre quand la souris quitte l'élément)
-> s'il veut plutôt que sa ce passe au focus, il passera 'focus' en paramètre et les mêmes actions se produiront sauf que cette fois ça sera au gain et à la perte du focus.
Voici le code que j'ai essayé (je ne met que le code problématique pour vous épargner les inutilités ) sans succès...
Comme vous pouvez vous imaginer, l'événement appliquée sera en fonction du paramètre envoyé.
Comment le faire donc ??
Merci d'avance pour vos réactions
Modifié par Dimtrovich (17 May 2017 - 15:44)
Le sujet est un peu bizarre et pas accessible de prime abord mais bon...
J'ai terminé ma «formation» en jQuery et j'ai voulu faire un petit plugin pour m'exercer un peu.
Le plugin doit effectuer certaines tâches en fonction des paramètres (événement particulièrement) et c'est là que tout bloque
Explication :
-> si l'utilisateur veut que l'action se produit au survol, il passe 'hover' en paramètre et le plugin effectue 2 actions (une au survol et l'autre quand la souris quitte l'élément)
-> s'il veut plutôt que sa ce passe au focus, il passera 'focus' en paramètre et les mêmes actions se produiront sauf que cette fois ça sera au gain et à la perte du focus.
Voici le code que j'ai essayé (je ne met que le code problématique pour vous épargner les inutilités ) sans succès...
/* event est le paramètre envoyé au plugin */
switch(event){
case 'hover' :
var IN = 'hover', OUT = 'mouseleave';
break;
case 'focus' :
var IN = 'focus', OUT = 'blur';
break;
default :
var IN = 'focus', OUT = 'blur';
}
$(this).IN(function(){
/* événement au début (focus ou hover ) */
});
$(this).OUT(function(){
/*événement à la fin (blur ou mouseleave) */
});
Comme vous pouvez vous imaginer, l'événement appliquée sera en fonction du paramètre envoyé.
Comment le faire donc ??
Merci d'avance pour vos réactions
Modifié par Dimtrovich (17 May 2017 - 15:44)