要解除与特定命名空间的jQuery事件绑定,请使用unbind()方法。该event.namespace属性用于返回自定义命名空间,当事件被触发。
您可以尝试运行以下代码,以了解事件命名空间的工作方式以及如何从命名空间中取消jQuery事件的绑定-
<!DOCTYPE html>
<html>
<head>
<script src="https://cdn.staticfile.org/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("p").on("custom.myNamespace",function(event){
alert(event.namespace);
});
$("p").click(function(event){
$(this).trigger("custom.myNamespace");
});
$("button").click(function(){
$("p").off("custom.myNamespace");
});
});
</script>
</head>
<body>
<p>Click me</p>
<button>Click the button to remove namespace.</button>
<p>Clicking the above button removes the namespace.</p>
</body>
</html>