document.addEventListener('contextmenu', function (e) { e.preventDefault() e.stopPropagation() e.returnValue = false e.cancleBubble = true }) No way?Edit: document.oncontextmenu = null does not work.P.S. I cannot have the reference of the listener function since I am not the owner of the site preventing the context menu.
3 Réponses :
plutôt que désactiver le menu contextuel, pourquoi n'identifiez-vous pas l'événement de clic droit? p>
Je ne suis pas celui qui désactive le menu contextuel. Certains sites désactivent-le, et je veux le casser.
Oh, tu veux dire comme un script greasemonkey ou quelque chose?
Si vous êtes AddeventListener code> est appelé. Cela fonctionne à la fois de FF et de Chrome. Je n'ai rien vérifié d'autre.
document.superListener = document.addEventListener;
document.addEventListener = function(type, listener, useCapture){
if(type != 'contextmenu')
document.superListener(type, listener, !!useCapture);
};
Merci pour votre réponse. Il semble qu'il soit impossible de réactiver le menu contextuel "après" l'appel ...
J'utilise mon bookmarklet dans de tels cas:
Celui-ci a bien fonctionné. Il suffit de limiter les options à «contextuelmenu».
Qu'entendez-vous par «éthique»?
Les sites qui désactivent délibérément le menu contextuel méritent de faire supprimer leurs scripts ou non couru, à mon avis. (J'utilise Noscript.) Je navigue souvent en cliquant avec le bouton droit de la souris et en sélectionnant le dos ou l'avant. Il n'y a rien de contraire à l'éthique de vouloir que le menu contextuel fonctionne. L'auteur du site le désactive en premier lieu est stupide.
Avez-vous essayé
document.onContexTMenu = null; code>?