jquery的on
jQuery的on方法
jQuery的on()方法是用于绑定事件处理函数的核心方法,支持动态元素事件委托和多种事件类型绑定。

基本语法
$(selector).on(event, childSelector, data, handler)
event:必需,指定事件类型(如click、mouseenter等)childSelector:可选,用于事件委托的子元素选择器data:可选,传递给事件处理函数的额外数据handler:必需,事件触发时执行的函数
绑定简单事件
$("#btn").on("click", function() {
alert("Button clicked");
});
事件委托
通过指定childSelector参数实现动态元素事件绑定:

$("#parent").on("click", ".child", function() {
console.log("Child element clicked");
});
多事件绑定
用空格分隔事件类型可同时绑定多个事件:
$("#element").on("mouseenter mouseleave", function() {
$(this).toggleClass("active");
});
传递额外数据
$("#btn").on("click", {user: "admin"}, function(event) {
console.log("User:", event.data.user); // 输出"admin"
});
命名空间事件
便于批量管理事件:
$("#elem").on("click.namespace", handler);
// 解绑特定命名空间事件
$("#elem").off(".namespace");
注意事项
- 动态生成的元素需要使用事件委托才能绑定事件
- 相比直接绑定(如
click()方法),on()是更现代的推荐方式 - jQuery 1.7+版本中,
on()替代了bind()、delegate()和live()方法






