关于js闭包有好几点太明白的东西,希望能给予解答!!
本帖最后由 Henry_YQH 于 2013-07-25 15:12:24 编辑 下面这段代码是用来鼠标放到每个图片上,自动改变背景图片的:
for(var i = 2 ;i<11;i++){
(function(){
var x=i;
$("#img"+x).mouseover(function(){
$("#img"+x).attr("src", "/LogService/images/hover_"+(x-1)+".jpg");
});
$("#img"+x).mouseleave(function(){
$("#img"+x).attr("src", "/LogService/images/"+(x-1)+".jpg");
});
})();
}for(var x = 2 ;x<11;x++){
(function(){
$("#img"+x).mouseover(function(){
$("#img"+x).attr("src", "/LogService/images/hover_"+(x-1)+".jpg");
});
$("#img"+x).mouseleave(function(){
$("#img"+x).attr("src", "/LogService/images/"+(x-1)+".jpg");
});
})();
}
for(var i = 0 ;i<2;i++){
(function(){ setTimeout(function(){alert(i)}) })();
}
for(var i = 0 ;i<2;i++){
(function(i){ setTimeout(function(){alert(i)}) })(i);
}
你分别运行看看区别
效果看了 没懂