欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jQuery组件封装之return this.each(function () {});

程序员文章站 2022-04-14 21:43:12
记录一下自己的调试历程 组件封装经常看到这么一段代码 为什么要return为什么要each? 自己调试了一番 发现若没有return,打印$(".div").easySlider({}) 因为这个方法没有返回值所以是undefined 经过return返回,打印$(".div").easySlide ......

记录一下自己的调试历程


 组件封装经常看到这么一段代码

$.fn.plugin = function (options) {
        return this.each(function (i,t) {
            new fun(this, options)
        });
    }
//组件调用
$(".div").plugin({
    str: ""
})
.css({
     "border": "1px dotted red"
})
.addclass('aaa');

  

为什么要return为什么要each?

自己调试了一番

发现若没有return,打印$(".div").easyslider({}) 因为这个方法没有返回值所以是undefined

经过return返回,打印$(".div").easyslider({}) 返回当前对象

若为undefined自然就不能够进行.css()或.addclass等方法调用了

 

这时候可能又纳闷了,直接return this 不就ok了么?

例如:

$.fn.easyslider = function (options) {
        new showlink(this, options)
        return this;
    }  

这个时候就要说each了,