如何观看Angularjs中的按键组合?

我试图让我的控制器观看键的组合.为了争论的缘故,让我们说:向上下左下左右右b a.无论用户目前在哪个页面中,怎么能有角度去寻找这些?
看来你可以使用 ng-keydown这样做.

这是working plunker.

对于这个例子,我刚刚将ng-keydown绑定到< body>.全面掌握所有的键盘事件,效果非常好.

正如@charlietfl指出的那样,ng-keydown注册了大量的键盘事件,使得这个可用的功能将会很多.例如,如果您尝试收听组合(如ctrl r),则ctrl键将会注册多次.

JS:

var myApp = angular.module('myApp',[]);

myApp.controller('Ctrl',function($scope) {


    $scope.keyBuffer = [];

    function arrays_equal(a,b) { return !(a<b || b<a); }

    $scope.down = function(e) {

      $scope.keyBuffer.push(e.keyCode);

      var upUp = [38,38,40,37,39,66,65];
      if (arrays_equal(upUp,$scope.keyBuffer)) {

        alert('thats it!');
      }
    };

  });

HTML:

<body ng-controller="Ctrl" ng-keydown="down($event)">

相关文章

ANGULAR.JS:NG-SELECTANDNG-OPTIONSPS:其实看英文文档比看中...
AngularJS中使用Chart.js制折线图与饼图实例  Chart.js 是...
IE浏览器兼容性后续前言 继续尝试解决IE浏览器兼容性问题,...
Angular实现下拉菜单多选写这篇文章时,引用文章地址如下:h...
在AngularJS应用中集成科大讯飞语音输入功能前言 根据项目...
Angular数据更新不及时问题探讨前言 在修复控制角标正确变...