如何处理 angular.js 中的右键单击事件? [英] How do I handle right-click events in angular.js?

查看:23
本文介绍了如何处理 angular.js 中的右键单击事件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有办法设置一个元素,使其在左键单击 (ng-click) 时执行一个操作,然后在右键单击时执行另一个操作?

Is there a way to have an element set up so that it performs one action on left-click (ng-click) and then another action on a right-click?

现在我有类似的东西:

<span ng-click="increment()">{{getPointsSpent()}}</span>

而且我还希望能够右键单击跨度以执行函数 decrement();

And I'd like to also be able to right click on the span to perform the function decrement();

推荐答案

您可以使用指令绑定右键单击时的特定操作,使用 contextmenu 事件:

You can use a directive to bind specific action on right click, using the contextmenu event :

app.directive('ngRightClick', function($parse) {
    return function(scope, element, attrs) {
        var fn = $parse(attrs.ngRightClick);
        element.bind('contextmenu', function(event) {
            scope.$apply(function() {
                event.preventDefault();
                fn(scope, {$event:event});
            });
        });
    };
});

小提琴代码示例

这篇关于如何处理 angular.js 中的右键单击事件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆