javascrpt绑定事件之匿名函数无法解除绑定问题

时间:2012-12-06    点击:79   
经常听到有人说,匿名函数绑定事件不好控制啊,无法解除绑定啊等等等等,一直很奇怪谁说的不能解除绑定。

下面来实现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);
}
});

其他的自己去测吧。
Javascript获取窗口(容器)的大小及位置参数列举及简要说明
javascript操作JSON的要领总结
js写一个弹出层并锁屏效果实现代码
JavaScript之Getters和Setters 平台支持等详细介绍
缓动函数requestAnimationFrame 更好的实现浏览器经动画
> 返回     
地址:上海市普陀区胶州路941号长久商务中心 电话: QQ:
© Copyright 2012 上海网络 Product All Rights Reserved