angular-ui shift按钮按键

时间:2014-05-09 20:10:39

标签: javascript angularjs angularjs-directive angular-ui

我设法让Enter keypress工作。但我似乎无法让“shift”按钮按下来工作。这是我输入的代码:

<button 
    class="btn btn-primary order-input-add" 
    ui-keypress="{13:'add_plu(order.orderwindow.add_field)'}" 
    ng-click="add_plu(order.orderwindow.add_field)">Add
</button>

1 个答案:

答案 0 :(得分:1)

由于您似乎无法使用ui.keydown捕获shift键(如果是这样,可能是因为它最常用作修饰键),您可以改为创建自己的指令来装饰元素听取keydown事件的转变:

angular.module('myApp', [])
.directive('captureShift', function(){
  return {
    restrict: 'A',
    link: function(scope, elem, attrs) {
      elem[0].onkeydown = function(){
        console.log('shift pressed');
      }
    }
  }
});

Shift似乎没有在按键上触发,但在keydown上触发,因此使用了onkeydown

Plunker Demo