Javascript jQuery事件。。。里面应该有多少代码?
如果我要将更改事件附加到许多项上,比如一个大表单上的每个复选框,然后在此基础上处理规则,我是否应该执行一个单独的函数,而不是将该代码放在事件中的匿名函数中Javascript jQuery事件。。。里面应该有多少代码?,javascript,jquery,performance,jquery-events,Javascript,Jquery,Performance,Jquery Events,如果我要将更改事件附加到许多项上,比如一个大表单上的每个复选框,然后在此基础上处理规则,我是否应该执行一个单独的函数,而不是将该代码放在事件中的匿名函数中 $(".magic_checkbox").change(function(event){ //somewhat lengthy code here }); 这是为每个复选框创建一个单独的JavaScript函数对象,还是它们都将使用一个指针?如果它们都是重复的,那么即使在Grand方案中也有关系吗?只有一个匿名函数,但您可能需要考虑委托
$(".magic_checkbox").change(function(event){
//somewhat lengthy code here
});
这是为每个复选框创建一个单独的JavaScript函数对象,还是它们都将使用一个指针?如果它们都是重复的,那么即使在Grand方案中也有关系吗?
只有一个匿名函数,但您可能需要考虑委托事件方法。在
.magic\u复选框
元素的父对象上创建单个事件处理程序。然后执行以下操作:
$("#parentObjectId").on("change", ".magic_checkbox", function(event){
// your somewhat lengthy code here
});
或者
$("#parentObjectId").on("change", ".magic_checkbox", function(event){
somewhatLengthyMethod();
});
function somewhatLengthyMethod() {
// your somewhat lengthy code here
}
在两者之间做出选择只是偏好的问题。关键是事件委派,它导致事件处理程序少得多,因此效率更高。而不是
$(“#parentObjectId”)。关于(“更改”,“magic_checkbox”,函数(事件){somewhatLengthyMethod();})代码>,$(“#parentObjectId”)。在(“更改”,“魔法”复选框),一些什么样的方法)代码>可能更可取。@icktoofay,true。我喜欢!