使用事件的普通jQuery选择器,我可以这样做:
var ele = $('ul.list li');
$('a',ele).on('click',function(){});
它针对DOM中ele
下的所有链接(我想!)。
有了主干,我当前事件的功能在一个视图中看起来像:
events: function(){
var e = {};
e['click a'] = 'someFunction';
return e;
}
如何使用主干网进行同样的操作,即以ele
..下的所有链接为目标。。?
具体来说,我想要瞄准的元素是来自同一视图的el
,它是使用tagName: 'li'
创建的(未引用)。
更新:
所以我想我真正想问的是:
使用Backbone视图,如何将事件仅附加到作为视图DOM元素的子元素的DOM元素上。。?
我想这就是您想要的:
var MyView = Backbone.View.extend({
// stuff
events: {
"click .icon": "open",
"click .button.edit": "openEditDialog",
"click .button.delete": "destroy"
},
// more stuff
});
MyView
事件对象中定义的事件将仅应用于定义的el
内部的DOM元素。
看看:http://backbonejs.org/#View-el了解有关el
(和$el
)的更多信息