如何在Meteor Template事件中监听变量事件?

时间:2017-10-19 13:24:58

标签: events meteor meteor-blaze

问题基本上是如何转换这个:

var evt = 'click' || 'touchstart'; // Based on some logic
$('.selector').on(evt, function(){});

进入Meteor事件处理程序

Template.MyTemp.events({
    ....??? : function(e, t){}
});

更新

根据以下评论,似乎问题chrome,因为它设置了触摸事件passive = true

所以新问题将是:

  

如何在Blaze模板中为事件侦听器设置被动属性   事件

1 个答案:

答案 0 :(得分:1)

您可以使用/作为事件类型之间的分隔符,在单个处理程序中指定多个事件。 docs

Template.MyTemp.events({
  'click/touchstart .selector'(e,t){
    e.preventDefault(); // prevents default click after touchstart
    // your handler
  }
});

英文:

  

用于模板MyTemp处理点击或触摸开始事件   selector上课。

这也很有用:touch and mouse