jQuery 的 on
方法用于绑定一个或多个事件处理器函数到指定的元素上。它是 jQuery 事件处理的核心方法之一,提供了灵活的事件绑定机制。
on
方法允许你为当前或未来的匹配元素绑定一个或多个事件处理器。这意味着,即使在绑定事件之后动态添加的元素,也能触发这些事件处理器。
$(selector).on(event, [selector], [data], handler);
event
:一个或多个空格分隔的事件类型和可选的命名空间。selector
(可选):一个选择器字符串,用于过滤触发事件的后代元素。data
(可选):当事件触发时传递给事件处理函数的额外数据。handler
:事件触发时执行的函数。selector
参数,可以实现事件委托,即把事件处理器绑定到一个父元素上,然后由这个父元素来触发子元素的事件。on
方法绑定的事件处理器依然有效。off
方法可以方便地解绑之前使用 on
绑定的事件处理器。on
方法支持多种类型的事件,包括但不限于:
click
, dblclick
, mousedown
, mouseup
, mousemove
, mouseover
, mouseout
等。keydown
, keyup
, keypress
等。submit
, change
, focus
, blur
等。load
, unload
, scroll
, resize
等。// 绑定一个点击事件处理器
$('#myButton').on('click', function() {
alert('按钮被点击了!');
});
// 使用事件委托绑定一个点击事件处理器到所有 class 为 'myLink' 的 a 元素上
$('#container').on('click', '.myLink', function() {
alert('链接被点击了!');
});
// 绑定一个带有额外数据的点击事件处理器
$('#myButton').on('click', { message: 'Hello, world!' }, function(event) {
alert(event.data.message);
});
off
方法先解绑之前的事件处理器,然后再重新绑定。one
方法绑定一次性事件处理器。通过合理使用 on
方法,可以有效地处理各种事件,提升用户体验和页面交互性。
领取专属 10元无门槛券
手把手带您无忧上云