【www.bbyears.com--jquery】
实现方法:为事件匿名函数指定变量,实例:
代码如下
javascript:;" class="link1">事件测试 解绑事件
<script type="text/javascript">
$("#demo").on("click", ".link1", function(event) { console.log(1111); }); $("#demo").on("click", ".link1", myFun2=function(event) { console.log(222); }); $(".unbind").click(function(event) {
// .off()第2个参数不再是要解绑的元素对象,而是绑定事件时,为事件匿名函数指定变量(此变量指向点击事件的函数 )
$("#demo").off("click",myFun2); });
</script>
第2个参数不再是要解绑的元素对象,而是绑定事件时,为事件匿名函数指定变量(此变量指向点击事件的函数 ) $("#demo").off("click",myFun2); }); </script>
单击展开,方便编辑代码
提示:你可以先修改部分代码再运行。
好了,对同一元素绑定同类型多个事件后,可以“为事件匿名函数指定变量”的方法来实现解绑指定的其中一个事件。那么,快速解绑指定多个(同类型或不同类型)事件又怎么实现呢?
2、解绑同类型多个事件其中一个事件:为事件匿名函数指定变量
实现方法:添加事件命名空间,实例:
代码如下 事件测试 解绑事件<script type="text/javascript">
$("#demo").on("click.test", ".link1", function(event) {
console.log(1111);
});
$("#demo").on("click", ".link1", function(event) {
console.log(222);
});
$("#demo").on("mouseover.test", ".link1", function(event) {
console.log(333);
});
$(".unbind").click(function(event) {
// 第1个参数不再是要解绑的事件类型,而是之前为要解绑事件指定的命名空间.test
$("#demo").unbind(".test");
});
</script>