javascript - meteor 监听多个事件只发射一次

标签 javascript jquery events meteor

Meteor 提供了为模板定义事件处理程序的功能。我有一个文本输入,用户可以输入,也可以粘贴等。

到目前为止我用过:

Template.myTemplate.events({
    'keyup #inputfield': function() {
         DO SOMETHING HERE
     }
});

是否可以定义类似于 jquery 的“on”函数的东西?

$('#inputfield').on('change keypress paste focus textInput input', function () 
{ 
    DO SOMETHING HERE
});

无论同时发生多少个事件,它都只会触发一次。

最佳答案

您可以使用stopImmediatePropagation来停止其他处理程序:

Template.myTemplate.events({
    'keyup #inputfield': function(event) {
         event.stopImmediatePropagation();
     }
});

或者您可以使用 jQuery 加上 rendered 命令来实现相同的效果:

Template.myTemplate.rendered(function() {
  $(this.find('#inputField')).on('change keypress paste focus textInput input', function () 
  { 
      DO SOMETHING HERE
  });
});

关于javascript - meteor 监听多个事件只发射一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18921432/

相关文章:

javascript - react 路由器开关未按预期工作

jquery - 为什么 jQuery 模板要给某些字符串添加双引号

jquery - 如何使用.load和.fadeIn更改DIV内容?

DropDownList 上的 ASP.Net 客户端事件?

javascript - 如何修复/解决 CSS3 Transitions 的 transitionend 事件的浏览器实现中的不一致?

javascript - 日期选择器:显示下个月/上个月的天数(如果在当前月份的结束/开始周)

javascript - 为什么在 javascript 中点击外部时不关闭下拉菜单

javascript - 如何从html的YouTube嵌入式iframe代码中删除相关视频?

javascript - 使 slider 图像响应 Bootstrap

javascript - 在 css 更改时触发的 jQuery 事件