如何在流星的整个页面上收听点击事件?

Nic*_*ick 9 javascript-events meteor

我正在试验排行榜示例,当您点击播放器名称时,我想取消设置selected_player.我想这个工作,我需要向body元素添加一个监听器事件,并防止它触发其中的其他元素.然后我将selected_player设置为0.

但是,我似乎只能将事件映射添加到模板?

  Template.player.events({
    'click': function () {
      Session.set("selected_player", this._id);
    }
  });
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗? 如何收听整个页面的"点击"事件?

n1m*_*mmy 13

没有好的方法将事件绑定到整个身体.但是,您可以将所有代码包装在一个包含事件的外部模板中,如Narven建议的那样.

<body>
  {{> outer}}
</body>

<template name="outer">
   your stuff
</template>
Run Code Online (Sandbox Code Playgroud)

Template.outer.events({
  'click': function () {
    do stuff 
  }
});
Run Code Online (Sandbox Code Playgroud)