在JavascriptMVC的Controller中,他们使用以下格式进行事件处理
而不是经典的jquery
$(function(){
$('#tabs').click(someCallbackFunction1)
$('#tabs .tab').click(someCallbackFunction2)
$('#tabs .delete click').click(someCallbackFunction3)
});
他们这样做
$.Controller('Tabs',{
click: function() {...},
'.tab click' : function() {...},
'.delete click' : function() {...}
})
有什么方法可以使用他们的方式为以下jquery选择设置click事件处理程序:
$('#continent_select').siblings("ul:first").find('a').click(function() {
console.log('here');
});
如果不可能,那么启动此处理程序的最佳位置在哪里?
答案 0 :(得分:0)
$.Controller
允许将DOM事件绑定到其容器元素及其任何后代。
它还允许将事件绑定到对象(并且可以扩展以满足您的特殊需求)。
如果$('#content_select')
与控制器的元素匹配,那么您将无法将元素绑定到其兄弟节点。如果它包含在你的控制器元素中,那么你必须构建适当的选择器,根据你的代码看起来可能看起来像这样:
li:has(#content_select) > ul:first a