📅  最后修改于: 2023-12-03 15:24:44.725000             🧑  作者: Mango
在 jQuery 中,可以使用 on
方法将多个事件处理程序附加到同一个元素上。这种方法称为事件绑定。
以下是 on
方法的语法:
$(selector).on(event, childSelector, data, handler);
selector
:要绑定事件的元素选择器;event
:要绑定的事件类型,可以是一个或多个以空格分隔的字符串,例如 "click"
或 "click focus"
;childSelector
(可选):用于指定要绑定事件的子元素选择器;data
(可选):传递给事件处理程序的任意数据;handler
:事件处理程序,可以是函数或函数名。以下示例演示如何使用 on
方法将多个事件处理程序附加到同一个元素上:
<!DOCTYPE html>
<html>
<head>
<title>多个事件处理程序示例</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(function() {
$("#myBtn").on("mouseenter click", function() {
$(this).toggleClass("active");
});
});
</script>
<style>
.active {
background-color: yellow;
}
</style>
</head>
<body>
<button id="myBtn">点击或悬停</button>
</body>
</html>
在这个示例中,on
方法用于将 mouseenter
和 click
事件处理程序附加到按钮元素上。当鼠标悬停或单击按钮时,将切换按钮的 active
类,从而改变其背景颜色。
on
方法,而不是多个参数。on
方法绑定的事件处理程序需要使用 this
,则应将其写为函数表达式而不是箭头函数,因为箭头函数不会修改 this
的值。on
方法。在处理程序内部,事件数据可以通过 event.data
属性访问。