📅  最后修改于: 2023-12-03 15:02:14.072000             🧑  作者: Mango
unbind()
方法用于移除之前使用 bind()
函数绑定的事件处理程序。如果在绑定事件时使用了事件命名空间,则可以通过 unbind()
方法中提供的命名空间参数选择要解除绑定的事件。
$(selector).unbind(event, handler);
或者
$(selector).unbind(event, false); // 解绑所有事件处理程序
event
: 必需,规定要移除的事件的类型,可以是多个事件类型。handler
: 可选,规定要移除的事件处理程序。false
: 可选,当仅想解除通过 bind()
绑定事件时使用。该函数没有返回值。
<!DOCTYPE html>
<html>
<head>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("button").click(function(){
$("#div1").unbind(); // 解除所有事件处理程序
});
$("#div1").bind("mousedown", function(){
alert("mouse down over div");
});
});
</script>
</head>
<body>
<div id="div1" style="background-color:yellow;height:100px;width:300px;"></div><br>
<button>解除事件处理程序</button>
</body>
</html>
在此示例中,通过 bind()
函数将事件处理程序绑定到了 #div1
元素上。当鼠标点击 “解除事件处理程序” 按钮时, #div1
上的所有事件处理程序均被解绑。因此,再次点击元素时,不会再触发任何事件。