jquery的闭包(理解执行函数)-创新互联
在前端进行元素集操作时肯定会有each操作
但是each操作的动作都会在所有所有元素遍历完后才会进行生效,故如果需要在遍历元素时就要使其操作生效的话,就需要在each元素时进行立即执行函数进行调用
以下是jquery的demo代码(一个html中有多个img元素,对img元素的边框进行设置):
$(document).ready(function(){ $("img").each(function(index){ //选择所有的img元素集合进行遍历 //(function(){xxxxxxx})()使用此定义立即执行函数,其实就是在这里进行了函数的直接调用 (funciton(m){ setTimeout(function(){ //这里是为了更好的查看结果,所谓对每隔1s进行元素的改变 $("img").eq(m).css("border","solid 2px yellow"); //使用元素过滤器根据元素的index进行定位来依次设置元素的css属性 }, 1000*(m+1)); //用于jquery中这里的的不是间隔时间,而是经历的总时间,所以如果是间隔1s的话,第二个元素就要等待2s,以此类推(且这里的index是从0开始的) })(index); //此index是给立即执行函数的实参,里面的function中的m为函数的形参(把index传递给里面的function) }); });
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网站栏目:jquery的闭包(理解执行函数)-创新互联
文章起源:http://lswzjz.com/article/ceijii.html