为了账号安全,请及时绑定邮箱和手机立即绑定

jquery的闭包(理解执行函数)

标签:
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)        });});


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
移动开发工程师
手记
粉丝
18
获赞与收藏
134

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消