猿问

*******************js闭包问题求解决******************

这块,用firebug查看了下,产生了闭包,一直存在堆栈上不释放,导致卸载了mousemove,mouseup后,又移动的话会触发进入产生的这个闭包事件,该如何解决呢?

addEvent:function(oTarget,name,funName){
var args = Array.prototype.slice.call(arguments).slice(3);
var regHandler=funName
if(args.length>0){
regHandler
=function(e){
return funName.apply(this,[e||window.event].concat(args));
}
//这里的regHandler产生了个闭包,一直在堆栈中存在,该怎么解决呢?
}
if(oTarget.addEventListener){
oTarget.addEventListener(name,regHandler,
false);
}
else{
oTarget.attachEvent(
"on"+name,regHandler);
}
},
人到中年有点甜
浏览 519回答 3
3回答

梦里花落0921

可以不用閉包

元芳怎么了

那该怎么做?主要是添加事件要把参数传过去!
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答