无法使用jquery来定位使用Mustache.js呈现的元素

fly*_*cus 2 jquery templates mustache

我有个问题

我用Mustache.js创建了一个模板(例子):

<script type="text/template" id="info">
  <div id="info-content">
    {{>photoEl}}                
  </div>
</script>
Run Code Online (Sandbox Code Playgroud)

创建某些元素并添加为部分元素(示例):

partials.photoEl = '<span class="photo"><a class="button" href="#"></a></span>';
Run Code Online (Sandbox Code Playgroud)

但是我不能使用jQuery来定位任何元素.

$('.button').click(function(event){
  console.log('click');
});
Run Code Online (Sandbox Code Playgroud)

什么也没做...

知道为什么吗?

Edu*_*ana 8

使用event delegation它将为将来的元素添加处理程序.

如果您使用$(".button")且元素不在DOM中,则事件处理程序将无法工作,因为将选择注释

$(document).on("click",".button",function(){
  console.log('click');
})
Run Code Online (Sandbox Code Playgroud)