繁体   English   中英

如何在Meteor JS中检测整个文档的事件?

[英]How to detect events on entire document in Meteor JS?

它真的很简单。 我目前在我的模板事件中,但它不起作用:

 'keyup': function(event) {
    event.preventDefault();
    console.log("KEYUP");
}

更新:它似乎是框架中的一般错误。 我很感激,如果有人可以分享我可以使用的手动黑客,不涉及使用别人的包。

更新2:我已经解决了这个问题,如下所示。

不幸的是,流星( )中存在一个错误,即事件不会在UI.body.templateUI.body.template 您可以使用包meteor-body-events来修补它,并在整个文档上附加keyup事件。

我的原始代码突然起作用了。 也许Meteor的优秀人员已经解决了这个问题,耶!

以下是0.9.3.1对我有用的内容:

Template.template_name_here.events({
  'keyup': function(event) {
    event.preventDefault();
    console.log("KEYUP");
  }
});

Meteor甚至可以使用单个处理程序处理多个事件,如下所示:

Template.template_name_here.events({
  'keyup, click': function(event) {
    event.preventDefault();
    console.log("KEYUP OR CLICK");
  }
});

真棒!

目前Meteor正在正确处理<body>事件, 除非您使用的渲染器接管模板的渲染。 这方面的一个例子是Kadira:blaze-templates ,它将覆盖模板的默认Meteor渲染(用于FlowRouter)或Iron Router

幸运的是,有一个简单的包来恢复这个功能,称为gwendall:body-events

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM