小编bit*_*get的帖子

angular.js监听按键作为按钮的快捷方式

我的第一个角应用程序是一个非常基本的调查工具.我有多个选择题,每个答案都有一个按钮,还有一个基本功能,可以按下按钮点击每个答案,如下所示:

ng-click="logAnswer(answer.id)"
Run Code Online (Sandbox Code Playgroud)

我正在寻找的是能够在文档中添加一个按键事件,该事件将监听1,2,3,4,5的键盘响应,该响应与按钮选项匹配并调用相同的功能.

在搜索时,我只能在特定输入字段具有焦点时找到与按键相关的响应,这对我没有帮助.我确实在这篇文章中找到了OPs响应Angular.js按键事件和工厂似乎朝着正确的方向前进,但我无法弄清楚我如何得到他的指令来调用我的函数.

我已将指令包含在我的js中:

angular.module('keypress', []).directive('keypressEvents', 
  function($document, $rootScope) {
    return {
      restrict: 'A',
      link: function() {
        $document.bind('keypress', function(e) {
           $rootScope.$broadcast('keypress',e , String.fromCharCode(e.which));
        });
     }
   }
})
Run Code Online (Sandbox Code Playgroud)

但我不确定如何使用控制器中的键绑定对象:

function keyedS(key, parent_evt, evt){
      // key is the key that was pressed
      // parent_evt is the keypress event
      // evt is the focused element object
}
$scope.keyBindings = {
    's': keyedS
}
Run Code Online (Sandbox Code Playgroud)

如何使键绑定对象侦听我正在侦听的键并启动我需要的功能?

谢谢

javascript jquery keypress angularjs angularjs-directive

9
推荐指数
1
解决办法
2万
查看次数

从新的Yeoman安装返回的grunt服务返回 - 警告:找不到任务"服务"

运行yo angular然后cd'进入应用程序的根文件夹(与app文件夹相同的级别gruntfile,package.json等)我尝试grunt serve,我得到上述错误.Grunt不会为我启动服务器.

我已经搜遍了所有但是找不到说运行npm install并且bower install在应用程序的根目录中,我已经尝试但仍然是同样的错误.

我已经更新并检查了bower/grunt/npm,它们都很好.

有什么建议吗?

angularjs gruntjs yeoman yeoman-generator-angular

7
推荐指数
1
解决办法
1万
查看次数