当前位置: 首页 > 面试题库 >

如何处理angular.js中的右键单击事件?

唐信瑞
2023-03-14
问题内容

有没有一种方法可以设置一个元素,使其在左键单击(ng-click)上执行一个动作,然后在右键单击上执行另一个动作?

现在我有类似的东西:

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

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


问题答案:

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

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});
            });
        });
    };
});

小提琴上的代码示例



 类似资料:
  • 问题内容: 我想阻止标准上下文菜单,并手动处理右键单击事件。 怎么做? 问题答案: 使用事件。 这是一个例子: 并使用事件监听器: 不要忘记返回false,否则仍会弹出标准上下文菜单。 如果要使用编写的函数而不是,请记住在函数和属性中都返回false 。

  • 问题内容: 对于Windows和Linux,我能够检测到右键单击。但是对于Mac,我不知道如何检测右键单击。 如何编写Java程序以检测Mac OS的右键单击 感谢Sunil KUmar Sahoo 问题答案: 这与检测Windows或Linux上的右键单击相同–您调用给定的MouseEvent的方法来检查是否被单击。例如,看一下示例MouseListener的以下代码片段: 但是,这仅在用户实际

  • 问题内容: 右键单击Javascript事件吗?如果可以,该如何使用? 问题答案: 正如其他人提到的那样,可以[通过常规鼠标事件(mousedown,mouseup,click)检测[鼠标右键。但是,如果在弹出右键单击菜单时正在寻找触发事件,那么您所寻找的位置是错误的。也可以通过键盘(在Windows和某些Linux上为shift + F10或上下文菜单键)访问右键单击/上下文菜单。在这种情况下,

  • 问题内容: 在我的三个按钮上,鼠标=中键单击和=右键单击。 两键鼠标就是这种情况吗? 谢谢 问题答案: 为了避免任何歧义,请使用SwingUtilities中的实用程序方法:

  • 问题内容: 我正在尝试使用selenium进行右键单击,对此有任何想法吗? 问题答案: 我已经尝试过ActionSequence,而且效果很好。 找不到ContextClick函数,应使用click。 因此,应如下所示: 元素是您的Web元素,2表示右键。 要大致模拟JavaScript中的右键单击,请查看JavaScript模拟代码中的右键单击。

  • 我有一个像标志一样的布尔字段来声明表中的行是否被删除。它使用复选框显示,因此如果数据已被删除,复选框值为true,反之亦然。 以下是显示表格的代码: 在表中,我可以单击复选框,但我不知道如何处理单击事件,因为我使用数据来显示数据。如何处理复选框事件使用可数据?