事件没有解雇,我不确定原因。
这是我初始化视图的方式 -
tabModel1 = new TabModel()
tabModel2 = new TabModel()
tabs = new TabModels()
tabsView = new Tabs({
collection: tabs
})
tabs.add tabModel1
tabs.add tabModel2
$('body').append tabsView.$el
这是我的观看代码
class Tab extends Backbone.View
className: 'tab'
initialize: () ->
@model.on('change','render')
@render()
render: () =>
@$el.append("ChildTab")
select:()->
console.log 'child tab selected'
events:
'.tab' : 'select'
class Tabs extends Backbone.View
className: 'tabs'
initialize:()->
@collection.on 'add',@_addTab
@render()
render:()->
_addTab:(model)=>
tabView = new Tab({
model: model
})
@$el.append tabView.el
_renderTab:(e)=>
console.log "WHAT?"
events:
'click .tabs' : '_renderTab()'
单击选项卡或选项卡不会触发所需的点击事件。为什么?我可以确认附加了元素。
答案 0 :(得分:2)
尝试以下方法:
class Tab extends Backbone.View
// ...
events:
'click' : 'select'
class Tabs extends Backbone.View
// ...
events:
'click' : '_renderTab'
答案 1 :(得分:0)
需要做'click':'func'
我认为它正在寻找一个.tabs元素,它是.tabs的孩子。