107 votes

Ajouter plusieurs écouteurs d'événements à un seul élément

Alors mon dilemme est que je ne veux pas écrire le même code deux fois. Une fois pour l'événement de clic et une autre pour l'événement touchstart.

Voici le code original:

document.getElementById('first').addEventListener('touchstart', function(event) {
    do_something();
    });

document.getElementById('first').addEventListener('click', function(event) {
    do_something(); 
    });

Comment puis-je simplifier cela ? Il DOIT y avoir un moyen plus simple!

0voto

Sunil Xtha Points 41

'onclick' dans le html fonctionne pour les événements tactiles et de clic. Voici l'exemple.

0voto

user7607751 Points 38

Pour ceux qui cherchent une solution jQuery, cela pourrait être fait comme ceci :

$('#selector').on('click touchstart', function() {
    //faire quelque chose ici 
});

Ou :

$('#selector').on('click touchstart', myFunction);

-1voto

Norair Points 47

Cette petite bibliothèque javascript (1,3 Ko) peut faire toutes ces choses

https://github.com/Norair1997/norjs/

nor.event(["#first"], ["touchstart", "click"], [doSomething, doSomething]);

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X