时间:2021-05-26
经常听到有人说,匿名函数绑定事件不好控制啊,无法解除绑定啊等等等等,一直很奇怪谁说的不能解除绑定。
下面来实现click事件2次后,自动解除绑定。
看代码:
复制代码 代码如下:
var dom=document.getElementById("test"),clickt=0;
dom.addEventListener("click",function(e){
clickt++;
alert('你摸了我'+clickt+'下了。最多摸2下哦');
if(clickt>=2){
this.removeEventListener(e.type,arguments.callee,false);
}
});
很多扩展库,比如jquery都可以如此来实现自定义解除绑定:
复制代码 代码如下:
var t=0;
$(".a").bind("click",function(e){
t++;
alert('你摸了我'+t+'下了。最多摸2下哦');
if(t>=2){
$(this).unbind(e.type,arguments.callee);
}
});
其他的自己去测吧。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
off()函数用于移除元素上绑定的一个或多个事件的事件处理函数。off()函数主要用于解除由on()函数绑定的事件处理函数。该函数属于jQuery对象(实例)。
一.事件绑定1.事件绑定函数事件的绑定函数为如下形式:.bind(type[,data],fn)type:类型如click.....data:参数fn:事件执行
一$.fn.live重复绑定解决:使用die()方法,在live()方法绑定前,将此元素上的前面被绑定的事件统统解除,然后再通过live()方法绑定新的事件。复
解决:使用die()方法,在live()方法绑定前,将此元素上的前面被绑定的事件统统解除,然后再通过live()方法绑定新的事件。复制代码代码如下://先通过d
1.匿名函数匿名函数(anonymousfunction)是指未与任何标识符绑定的函数,多用在functionalprogramminglanguages领域,