javascript - 如何判断单击时是否按住了键

标签 javascript html angularjs

我希望能够在用户单击某些内容时判断用户是否按住“shift”键(或任何键,实际上)。

我能够判断用户是否单击了某些内容(通过在指令中的元素上使用 .click() 方法)以及用户是否按下了某个键,但我不知道如何判断是否用户在单击时以 Angular 按住某个键。

非常感谢任何帮助。

最佳答案

尝试使用 ngKeydown 指令。像这样在你的 View 中调用它。

ng-keydown="myFunct($event)"

myFunct 可能是这样的。

$scope.myFunct = function(keyEvent) {
    if (keyEvent.which === 16) {// 16 == shift. I guess;
        $scope.shift_is_been_pressed = true;
    }
}

所以。对 ngKeyup 指令执行相同的操作。

ng-keyup="myFunct($event)"

$scope.myFunct = function(keyEvent) {
    if (keyEvent.which === 16) {// 16 == shift. I guess;
        $scope.shift_is_been_pressed = false;
    }
}

现在,您可以使用shift_is_been_pressed来确定是否按下了shift。

关于javascript - 如何判断单击时是否按住了键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25355730/

相关文章:

jQuery 减少验证代码中的迭代

javascript - 读取 https 请求的 JSON 响应中的单个值

javascript - 选择 href 用户的 cookie 复选框

javascript - 使用 Javascript 查找和替换 IP 地址

html - <input> 中的文本以字母间距右对齐

javascript - 转义 ""个字符以在 jQuery 中输入变量

javascript - django 压缩器缩小错误

javascript - 如何使用 AngularJs、Ui-Router 和 MongoDB 轮询数据库并填充 Controller ?

javascript - "aps environment"如何解决呢?

javascript - 如何在 Remix.run 开发模式下使用内存缓存?