我知道如何调用事件的三种方式:
第一:通常的方式,它知道每个人。方式是在其视图中调用事件(我认为,您不需要任何示例)
第二:调用事件parent
(并不意味着扩展)视图。例如:
<body>
<div id="content">
<div id="view1" >
<input type="checkbox" id="first_view_element">
</div>
<div id="view2" >
<input type="checkbox" id="second_view_element">
</div>
</div>
</body>
如果是这样:父视图el
是'#content',子视图el
是'#view1',你可以在父视图内写
events: {
'click #first_view_element' : 'onClick'
}
第三:在完全不同的视图中调用事件。在这种情况下,我尝试使用上面的 html 代码来解释。如果一个视图el
是 '#view1' 而另一个el
是 '#view2'
App.hendChangesObj = 0 // it was simple name, i couldn't find variable name and param
App.View1 = Backbone.View.extend({
events: {
'click #first_view_element' : 'onClick'
},
onClick: function( event ) {
App.hendChangesObj++;
}
});
App.View2 = Backbone.View.extend({
initialize: function() {
this.listenTo(App.hendChangesObj, "change", this.onClick);
},
onClick: function() {
// do something
}
});