Comment puis-je capturer L'événement de clic droit dans JavaScript? [dupliquer]
cette question a déjà une réponse ici:
- est-ce que le clic droit est un événement Javascript? 13 Réponses
je veux bloquer les menus de contexte standard, et gérer l'événement de clic droit manuellement.
Comment faire?
2 réponses
utilisez l'événement oncontextmenu
.
voici un exemple:
<div oncontextmenu="javascript:alert('success!');return false;">
Lorem Ipsum
</div>
et en utilisant des écouteurs d'événements:
el.addEventListener('contextmenu', function(ev) {
ev.preventDefault();
alert('success!');
return false;
}, false);
N'oubliez pas de retourner false, sinon le menu contextuel standard apparaîtra.
si vous allez utiliser une fonction que vous avez écrite plutôt que javascript:alert("Success!")
, rappelez-vous de retourner false à la fois dans la fonction et l'attribut oncontextmenu
.
je pense que vous cherchez quelque chose comme ça:
function rightclick() {
var rightclick;
var e = window.event;
if (e.which) rightclick = (e.which == 3);
else if (e.button) rightclick = (e.button == 2);
alert(rightclick); // true or false, you can trap right click here by if comparison
}
( http://www.quirksmode.org/js/events_properties.html )
et ensuite utiliser onmousedown même avec la fonction rightclick () (si vous voulez l'utiliser globalement sur une page entière, vous pouvez faire ceci <body onmousedown=rightclick(); >