Pourquoi ne $de l'événement.preventDefault() dans AngularJS empêche pas de menu de contexte d'apparaître?
Comme le dit le titre, je ne sais pas pourquoi $event.preventDefault()
n'est pas de prévenir le menu contextuel qui apparaît sur le clic droit.
J'ai écrit cet exemple simple dans plunker pour illustrer le problème.
Html:
<body ng-controller="MainCtrl">
<div id="me" ng-mousedown="stopContext($event)">CLICK ME {{num}}</div>
</body>
Javascript:
$scope.stopContext = function(ev) {
$scope.num += 1;
ev.preventDefault();
};
Merci d'avance.
- menu contextuel afficher pas sur mousedown
Vous devez vous connecter pour publier un commentaire.
Afin de prévenir le menu contextuel, vous avez besoin pour capturer (et éviter) le
contextmenu
événement.Malheureusement, Angulaire n'ont pas de directive pour cet événement, vous aurez à créer un vous-même.
"Copier" dans le code source de Angulaire (version 1.2.16):
Ensuite, vous pouvez l'utiliser comme ceci:
Voir, aussi, cette courte démo.
Testé sur la dernière version de Chrome, Firefox et Safari et trouvé de travail.