当前位置:首页 > jquery

Jquery.on

2026-03-17 04:37:58jquery

Jquery.on

Jquery.on

jQuery.on() 方法详解

jQuery.on() 是 jQuery 中用于事件绑定的核心方法,支持动态元素事件委托。它取代了旧版的 .bind(), .live(), 和 .delegate() 方法,提供更统一的事件处理方式。

基本语法

$(selector).on(eventName, handlerFunction);
  • eventName: 字符串,指定事件类型(如 "click", "mouseenter")。
  • handlerFunction: 事件触发时执行的函数。

事件委托语法

$(staticParent).on(eventName, dynamicChildSelector, handlerFunction);
  • staticParent: 静态存在的父元素选择器。
  • dynamicChildSelector: 动态子元素的选择器字符串。
  • 原理:利用事件冒泡机制,在父元素上监听子元素触发的事件。

多事件绑定

$(selector).on({
  click: clickHandler,
  mouseenter: mouseenterHandler
});
  • 以对象形式同时绑定多个事件类型。

传递额外数据

$(selector).on("click", {customData: 123}, handlerFunction);
  • 通过第二个参数传递数据对象,在 handler 中通过 event.data 访问。

命名空间

$(selector).on("click.namespace", handlerFunction);
  • 方便批量管理事件,如通过 .off("click.namespace") 移除特定命名空间下的事件。

注意事项

  • 动态元素必须使用事件委托语法绑定。
  • 避免过度使用事件委托,尽量靠近目标元素绑定。
  • 通过 .off() 方法移除事件,防止内存泄漏。
  • 事件对象参数包含跨浏览器兼容的属性如 target, pageX, preventDefault() 等。

性能优化建议

  • 对高频事件(如 scroll, mousemove)使用节流/防抖。
  • 在不需要时及时解绑事件。
  • 委托层级不宜过深,通常 2-3 层为宜。

标签: Jqueryon
分享给朋友:

相关文章

jquery的on

jquery的on

jQuery的on方法 jQuery的on()方法是用于绑定事件处理函数的核心方法,支持动态元素事件委托和多种事件类型绑定。 基本语法 $(selector).on(event, child…

jquery中on

jquery中on

jQuery 中的 on() 方法 on() 方法是 jQuery 中用于绑定事件处理函数的核心方法。它可以替代传统的 bind()、live() 和 delegate() 方法,提供更灵活的事件绑定…

vue中$on实现

vue中$on实现

在Vue中,$on是事件总线(Event Bus)模式的核心方法,用于监听自定义事件。以下是关于$on的实现和使用详解: 基本用法 $on方法用于监听一个自定义事件,接收两个参数:事件名称和回调函数…

vue on emit实现

vue on emit实现

Vue 中的 $emit 实现 在 Vue 中,$emit 是子组件向父组件传递数据的主要方式。通过自定义事件,子组件可以触发父组件中定义的方法,并传递数据。 基本用法 子组件中通过 $emit 触…

vue on 和 emit实现

vue on 和 emit实现

Vue 中 $on 和 $emit 的实现 $on 和 $emit 是 Vue 中用于实现自定义事件的核心方法,常用于父子组件或兄弟组件间的通信。以下是具体实现方式: 使用 $emit 触发事件 在…

jquery .on

jquery .on

jQuery .on() 方法详解 jQuery.on() 是 jQuery 中用于事件绑定的核心方法,支持动态元素事件委托和多种事件类型绑定。以下是其功能和使用方式的详细说明: 基本语法 $(se…