我刚刚发现,在升级到Meteor 0.5.2(从0.5开始)后,关键事件('keypress','keydown',keyup')的事件处理停止了我的工作.像其他事件('click'和'blur')工作得很好.
即使在示例应用中,这样的代码也没有做任何事情:
Template.someTemplate.events = {
'keydown' : function(e) {
console.log(e);
}
};
Run Code Online (Sandbox Code Playgroud)
有趣的是,这个代码在我在输入类型="text"或textarea中键入的键按钮上工作(函数触发).但在别处 - 没有任何反应.
我正在测试Ubuntu 12.10中最新的Crome.
还有其他人遇到过这个问题吗?
谢谢,乔治
keydown事件适用于我可编辑的html.输入字段或contenteditable标签触发keydown事件.
但是如果你问如何处理正文上的keydown事件,这个线程可能会有所帮助:
您可以查看以下主题:https://groups.google.com/forum/?fromgroups =#!topic/meteor- totra/uHy--xIGH8o.
基本上,现在,您可以直接将事件处理程序附加到body元素.在上面链接的示例中,他等待呈现模板,然后使用jQuery附加处理程序:
Template.myTemplate.rendered = function() {
// Assuming you're using jQuery
$('body').on('keydown',function() {
console.log('key pressed');
});
}
Run Code Online (Sandbox Code Playgroud)
Meteor团队显然将很快支持更好地支持身体水平事件.
| 归档时间: |
|
| 查看次数: |
2020 次 |
| 最近记录: |