Events 主干事件未绑定到dom元素

Events 主干事件未绑定到dom元素,events,dom,backbone.js,click,Events,Dom,Backbone.js,Click,我的一个观点是: events: { 'click .tab': 'doSomething', }, 然后: 在我的视图中,这是一个重复出现的结构,但由于某些原因,此视图中的单击不会触发“doSomething”功能 元素何时绑定到事件 调试此操作的任何提示?委派在视图构造函数末尾的delegateEvents方法中进行 在返回this之前,请尝试手动调用this.delegateEvents()内部的渲染。您是否在初始化或呈现方法中以主干网不期望的方式使用这个.el 省略选择器会导

我的一个观点是:

events: {
    'click .tab': 'doSomething',
},
然后:

在我的视图中,这是一个重复出现的结构,但由于某些原因,此视图中的单击不会触发“doSomething”功能

元素何时绑定到事件


调试此操作的任何提示?

委派在视图构造函数末尾的
delegateEvents
方法中进行

在返回
this
之前,请尝试手动调用
this.delegateEvents()
内部的
渲染
。您是否在
初始化
呈现
方法中以主干网不期望的方式使用
这个.el

省略选择器会导致事件绑定到视图的根元素(
this.el

如果您的
class=“tab”
是视图DOM元素的意思是
this.el
,那么您应该将事件绑定为

events : {
  'click' : 'dosomething'
}
对于
this.el中的内部元素

<div class="tab">
     <span class="inner"></span>
</div>

文档:

Hm,我刚刚尝试在渲染返回之前调用this.delegateEvents(),但它仍然没有绑定事件。另外,我并没有在初始化或渲染中弄乱this.el。唯一有效的方法是调用var=this;this.$('.tab')。on('click',function(){that.doSomething();});在初始化内部,但这感觉像是糟糕的形式…我也没有搞乱$el或el,但将delegateEvents添加到渲染中修复了事件绑定。这正是我上面展示的,我很清楚这种模式。我想说的是,由于某种原因,这种模式不起作用,那么有什么方法可以调试事件委派呢。
<div class="tab">
     <span class="inner"></span>
</div>
  events : {
      'click' : 'dosomething'
      'click .inner' : 'onInnerClick'
    }