jQuery()方法是正式推荐的绑定事件的一种方法。


$(选择器),(事件、childselector、数据、功能、地图)




有几种常见的方法已经从这个扩展。

(绑定)


$(p)。Bind(单击
警报(被点击的段落。);
});
$(p)。
警报(被点击的段落。);
});


委托()


$(# DIV1 ),(单击
$(这个)Css(背景色
});
$(#格式),委托(P
$(这个)Css(背景色
});


(活的)


$(# DIV1 ),(单击
$(这个)Css(背景色
});
$(# DIV2)。活(单击
$(这个)Css(背景色
});




以上三种方法都不推荐jquery1.8后,与官方的活()方法在1.9被取消了,所以建议使用在()方法。

提示:如果需要删除由()绑定的方法,可以使用OFF()方法。


$(文档)Ready(函数(){)
$(p)。
$(这个)Css(背景色
});
$(按钮)。Click(函数(){)
$(p)关闭(单击);
});
});




提示:如果您的事件只需要一个操作,您可以使用一()方法


$(文档)Ready(函数(){)
$(p)。
$(这)。动画({字体:+ = 6px});
});
});




Trigger()绑定


$(选择器)。Trigger(事件、eventobj,参数,param2,…)
$(文档)Ready(函数(){)
$(输入)。
$(输入)!;
});
$(按钮)。Click(函数(){)
$(输入)。Trigger();
});
});




多个事件绑定相同的函数


$(文档)Ready(函数(){)
$(p),(鼠标悬停mouseout
$(p)。ToggleClass(介绍);
});
});




多个事件绑定不同的函数


$(文档)Ready(函数(){)
$(p)。
(鼠标悬停:功能){ $(体),Css(背景颜色
(mouseout:功能){ $(体),Css(背景颜色
(单击:函数){ $())Css(背景颜色
});
});




结合自定义事件


$(文档)Ready(函数(){)
$(p),(myownevent
$(这)文本(showName + !多么美丽的名字!))显示();
});
$(按钮)。Click(函数(){)
$(p)。Trigger(myownevent
});
});




将数据传输到函数


功能handlername(事件)
{
警报(事件,数据,MSG);
}
$(文档)Ready(函数(){)
$(p)。
});





适用于未创建的元素。


$(文档)Ready(函数(){)
$()。
$(这)SlideToggle();
});
$(按钮)。Click(函数(){)
$(这是一个新的段落。),InsertAfter(按钮);
});
});


jQuery有几种方式来绑定事件,建议使用()方法绑定有两个原因:

的1.on()方法可以绑定,动态添加到页面元素的事件

例如,DOM元素动态地添加到页面中。由()方法绑定的事件不需要关心事件的元素何时添加,也不需要重复绑定。一些学生可能习惯于使用Bind()、Live()或委托()来查看源代码。他们会发现,他们实际上的电话。在()方法,和生活()方法已在jquery1.9版本去掉。


Bind:
功能(
类型、数据、FN){
返回this.on(
类型,null,
数据,FN);
},
生活:
功能(
类型、数据、FN){
jQuery(
this.context
)。在(类型、this.selector,
数据,FN);
返回此;
},
代表:
功能(
选择器、类型、数据、FN){
返回this.on(
类型、选择器、数据、FN);
}


关闭()方法用于删除上()绑定事件。

2.on()方法结合的活动可以提高效率

许多文章提到使用事件气泡和代理来提高事件绑定的效率。他们大多数人没有列出具体的差异。因此,为了验证,我做了一个小测试。

假设页面添加了5000李,以测试Chrome开发工具配置文件加载的时间。

普通绑定(我称之为)


$(李的)。Click(function(){)
console.log(本)
});


绑定过程的执行时间

2013-08-13_190358

常见的结合相当于注册单击事件对5000li,有420和大约72ms绑定时间记忆的足迹。

关于()绑定


$(document)对(听到咔哒声,
李,
函数(){
console.log(本)
})


绑定过程的执行时间

2013-08-13_191010

的。在()结合利用的事件代理只有寄存器文件上单击事件,大约有220万,一个1ms左右绑定时间记忆的足迹。

以上是本文的全部内容,希望能帮助您了解jQuery()方法。