Astuce jQuery : accepter un clic une fois, une seule fois, pas de double clic

A lieu de faire

$('#mon_element').on('click', function() {
  mafonction();
} );

c’est pas “on” c’est “one” :

$('#mon_element').one('click', function() {
  mafonction();
} );

En fait une fois qu’on a cliqué sur l’élément en question, jQuery supprime l’évènement avec la fonction unbind().

4 comments

  1. MathRobin says:

    Exact et très bien vu. Je penserai à citer cette astuce dans ma chronique de demain 😉

  2. […] Les fêtes ne sont visiblement pas finies pour tout le monde. Très faible activité du côté officiel, heureusement, la communauté, elle, a déjà repris du service. On commence du côté du core de jQuery. Avec rien à dire. Enfin si, juste une petite astuce en rappel de la part de mon ami Olivier Pons. Qui nous rappelle comment faire pour appeler une seule fois une fonction lors d'un évènement. […]

  3. […] jQuery("#errors*").hide(); window.location= data.themeInternalUrl; } }); } olivierpons.fr – Today, 2:02 […]

Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

This site uses Akismet to reduce spam. Learn how your comment data is processed.