Vous pouvez lier plusieurs événements en un seul appel comme ceci :
$('sélecteur').bind('clic tapez',function(){ ... })
Cela peut fonctionner correctement dans certains navigateurs/mobiles, cependant, cela peut provoquer le déclenchement des événements deux fois sur certains appareils qui déclenchent à la fois le tape et le clic.
Vous pouvez corriger cela en effectuant une sorte de détection de périphérique/fonctionnalité et en ajoutant uniquement le gestionnaire approprié de cette manière...
$('sélecteur').bind( myCustomDetectionFunction() ? 'clic' : 'tapez' ,function(){ ... })
De plus, je pense que les événements touchstart
et mousedown
sont de meilleurs choix. Cela est dû au fait qu'après un toucher, l'événement de clic ne se déclenche pas tant qu'un délai ne s'est écoulé, le système permettant la possibilité d'un second toucher pour en faire un double-clic ou pour qu'il devienne un geste de balayage, etc. L'événement touchstart
se déclenche immédiatement, tout comme mousedown
, et devrait donc être plus réactif.