J'essaie d'ajouter un certain comportement pour l'événement de clic droit. Fait étrange, je ne peux tout simplement pas faire fonctionner la gestion des événements.
C'est le code jQuery:
$('body').on('click', '#wrapper', null, function(ev){ if (ev.which === 2 || ev.which === 3){ alert("Here!"); } });
Je pense que l'événement est déclenché, mais il ne peut pas être identifié comme un «bon clic». Le message d'alerte n'est jamais affiché. Qu'est-ce que je fais mal? Merci!
LE: Je peux identifier l'événement de clic gauche avec ev.which === 1
. Donc, il n'y a pas de problème.
Au lieu de click
utiliser mousedown
:
$('body').on('mousedown', '#wrapper', null, function(ev){ if (ev.which === 2 || ev.which === 3){ alert("Here!"); } });
En utilisant javascript, vous pouvez essayer ceci
document.onmousedown = ListenMouseClick document.onmouseup = ListenMouseClick function ListenMouseClick() { if (window.event.button==2 ) { alert('right click') } }
Facile à utiliser les opérateurs ternaires et ' mousedown
' ou ' contextmenu
'
$('body').on('mousedown','#wrapper',function(ev){ var evt = ev.which === 3 ? alert('rightClick') : alert('someOtherButton'); });
ou:
$('body').on('mousedown','#wrapper',function(ev){ var evt = ev.which === 3 ? alert('rightClick') : (ev.which === 2 ? alert('auxClick') : alert('someOtherButton')); });
ou:
$('body').on('contextmenu','#wrapper',function(){ alert('rightClick'); return false; });