如何捕获用户输入

时间:2014-07-04 17:24:30

标签: meteor

我需要捕获用户的输入,恰好是一个特定的按钮。我用这种方式抓住了这个

    Template.main.events({
        'keypress input': function (e) {
            if (e.charCode === 32) {
                console.log("Hit");
            };
        }
    });

在模板中就是这样的

    <template name="main">
      {{test_var}}
      <input type="text">
    </template>

这是有效的,但我需要它没有页面上的输入框。

1 个答案:

答案 0 :(得分:1)

模板事件仅限于模板中包含的DOM片段,并且在该片段内只有表单元素响应键盘事件。要捕获全局键盘事件,您应该使用jQuery。

Template.main.rendered = function() {
  $(document).on('keypress.mainTemplate', function() {
    ...
  });
};

Template.main.destroyed = function() {
  $(document).off('keypress.mainTemplate');
});