一尘不染

是否可以使用ng-keypress收听箭头按键?

angularjs

我正在尝试创建类似于konami代码“向上,向上,向下,向下,a,b,a,b,enter”的交互->发生了某些情况。

是否可以使用ng-keypress收听箭头按键?似乎不起作用?

的HTML:

input( ng-keypress='changed($event)'  )

s

$scope.changed = (evt) ->
    console.log(evt)

这不会注销箭头键事件吗?

我是否必须在窗口上推出自己的听众?如果是这样,我如何才能做到这一点?


阅读 210

收藏
2020-07-04

共1个答案

一尘不染

演示

$scope.key = function($event){
    console.log($event.keyCode);
    if ($event.keyCode == 38)
        alert("up arrow");
    else if ($event.keyCode == 39)
        alert("right arrow");
    else if ($event.keyCode == 40)
        alert("down arrow");
    else if ($event.keyCode == 37)
        alert("left arrow");
}

编辑

从更改ng-keypressng-keydown. DEMO

<input ng-keydown="key($event)" />
2020-07-04