流星keydown不起作用

Ken*_*ley 4 jquery keydown meteor

我正在使用meteor来更新数据库中的文档.但是keydown似乎没有用.这是代码.

Template.leaderboard.events({
    'keydown button.inc': function(evt) {
        if (evt.which === 39) {
            Players.update(Session.get("character"), {$inc: {score: 20}});
        }

        Players.update(Session.get("character"), {$inc: {score: 20}});
        //Players.update(Session.get("character"), {$set: {name: 'images/characters/ninja.png'}});
    },
    'keydown': function(evt) {
        if (evt.which === 37) {
            Players.update(Session.get("character"), {$inc: {score: -20}});
            //Players.update(Session.get("character"), {$set: {name: 'images/characters/ninjaleft.png'}});
        }
        Players.update(Session.get("character"), {$inc: {score: -20}});
    }
});
Run Code Online (Sandbox Code Playgroud)

为什么我的工作不起作用?

ben*_*nto 9

我已成功将键盘事件附加到textareas和输入,如下所示:

Template.inputArea.events({
  'keydown textarea' : function(e){
     console.log(e.which);
  }
});
Run Code Online (Sandbox Code Playgroud)

我不太熟悉将键盘事件附加到其他DOM元素.我知道window事件,我不得不使用jQuery来附加keydown输入.

Template.foo.rendered = function(){
  $(window).on('keydown', function(e){
    console.log(e.which);
  });
};

// and on newer versions 

Template.foo.onRendered( function() {
    $(window).on('keydown', function(e){
        console.log(e.which);
    });
});
Run Code Online (Sandbox Code Playgroud)

也许你可以试试这样的......