将热键绑定到Angular中的按钮单击

时间:2016-04-12 17:40:17

标签: jquery angularjs

我有一个有ng-click事件的div:

<div class="modalWindowClose" ng-click="closeSettings(user, users);"><i class="fa fa-times"></i></div>

我想在按下转义键时单击该元素,最好是在HTML本身内。像这样:

<div class="modalWindowClose" hotkey="{esc:'click this element'}" ng-click="closeSettings(user, users);"><i class="fa fa-times"></i></div>

做这样的事情最好的方法是什么?我尝试过Chief Fancy Pants的Angular热键,但它没有让我点击特定的元素,只运行一个函数。

1 个答案:

答案 0 :(得分:1)

您可以使用ng-keypress指令,然后检查控制器中的keyEvent。

您可以在此处找到更多文档:

https://docs.angularjs.org/api/ng/directive/ngKeypress

<div ng-keypress="test(param1, $event)" ng-click="test(param1)></div>

$scope.test = function(param1, keyEvent) {
  if(keyEvent) {
    if(keyEvent.which === 23) { 
       // esc
    }
  } else {
       // click
  }

};