为了账号安全,请及时绑定邮箱和手机立即绑定
  • 链式的原理就是要返回当前操作的上下文
    查看全部
    0 采集 收起 来源:end与addBack

    2017-03-27

  • 在Callbacks 局部作用域中定义的self,被返回到了全局作用域,这是闭包最普遍的利用状态。
    查看全部
  • 异步的事件驱动型回调函数 event loop 任务队列——工作线程:network DOM事件 setTimeout 读写文件 执行队列 JavaScript是严格的单线程
    查看全部
  • each迭代器属于实用方法,JS功能的实现,类似Underscore.js中的_.each实现。
    查看全部
  • 让我联想到ES5数组的遍历方法
    查看全部
    0 采集 收起 来源:迭代器

    2017-03-23

  • jQuery有很多的遍历方法,比如find() children() parent() 这里方法在于寻找目标DOM对象,英文表述叫traversing,jQuery文档中专门有这个类别。 遍历方法方面的设计特点是:对象内部维护一个专门存储元素集合对象的堆栈,这是一种数据结构,目的在于存储找到的元素集合对象。有了这个栈,我们就能轻而易举地获知前一次遍历获得的元素集合对象,就是使用prevObject。
    查看全部
    0 采集 收起 来源:end与addBack

    2017-03-23

  • 看到这里有眼前一亮的感觉。jQuery原来还能这么用。感觉学习源码,能够让我更好的学习jQuery。jQuery实例对象有个prevObject属性,我之前还疑惑这个属性是干什么用的,现在算是明白了。比如说彼时通过$(‘h1’)实例化一个jQuery对象,这是个类数组,存放着全部的h1元素;然后通过$(‘h1’).eq(0).find(‘a’)找到了文档中第一个h1对象中的a元素,注意此刻返回值还是jQuery实例。然后$(‘h1’).eq(0).find(‘a’).end(),这步操作结束后,就等于$(‘h1’).eq(0),也即文档中第一个h1对象。在遍历和查询节点中能够节约很多的重复操作哦。
    查看全部
  • 今天看到了插件接口的设计。首先插件可以是jQuery的静态方法,又能是jQuery实例的方法(扩展到实例原型对象上)。但是这两种方法的实现其实是同一个方法。 这节内容让我想到对象的可扩展性,对于库的设计者而言,全局对象的属性肯定不能随便扩展,只能提供一个接口,让其他开发者有序扩展。 另外,插件设计的好处。jQuery库仅保留核心功能,其余功能的实现都是通过插件。这样的好处是:降低框架的复杂度,同时又能丰富jQuery库的功能。
    查看全部
  • 方法链式调用,JavaScript权威指南中也有相关说明,method chaining,举就是jQuery的例子。从方法中返回对象,然后可以继续调用方法,形成一条方法链。这样的一个好处就是,少些很多代码,更贴切开发者思维。 但是并不是所有的方法都返回对象,有些方法有自己的返回值,比如html()、hasClass()、get()等方法。之前我还纠结为什么调用不同的方法,返回值大多都是jQuery对象,现在都明白了,是为了方便形成方法链啊。我得有意识地记住大多数方法里都有return this;这句指令。
    查看全部
  • 实例共享的方法存储在jQuery.fn对象上,此外还有一些静态方法,是存放在jQuery函数对象上的,比如jQuery.ajax方法。静态方法其实就是jQuery函数对象的属性方法。函数也是对象嘛,也能有自己的属性和方法。同样为了节省内存,实例的某些方法是取于静态方法。也就是说,别看一个叫实例方法,一个叫静态方法,但是它们实际上是同一个方法,因为占用同一块内存,只不过传递的参数有些不同罢了。
    查看全部
  • 为了在使用jQuery构造函数实例化对象时,让编程人员少写个new,那么就需要在构造函数里面多写个new。但是构造函数里面多写个new,容易出现循环递归的问题(虽然我没绕明白),然后就在jQuery.fn对象上加个构造器init。
    查看全部
    1 采集 收起 来源:分离构造器

    2017-03-20

  • 实例共享的方法存储在jQuery.fn对象上,此外还有一些静态方法,是存放在jQuery函数对象上的,比如jQuery.ajax方法
    查看全部
    0 采集 收起 来源:对象的构建

    2017-03-20

  • jQuery本质上是构造函数,但是和一般的构造函数不同的是:不需要使用new 操作符显式地实例化对象(可能就是为了少写个new才这样设计的吧);jQuery.fn是存储所有jQuery实例共享方法和共享属性的地儿。比如css方法、toggleClass方法,都在jQuery.fn对象上存着呢
    查看全部
    0 采集 收起 来源:对象的构建

    2017-03-20

  • $(handler);是$(document).ready(handler);的缩写形式,也是官方推荐的形式
    查看全部
  • 比如 $('h2'); // 获取页面中所有的"<h2>...</h2>"元素 返回的是一个类数组对象。其本质是对象类型,但是又可以使用$('h2')[0];这样的获取数组元素的方式来操作这个对象。
    查看全部

举报

0/150
提交
取消
课程须知
源码的阅读不是一蹴而就的,需要大家有一定的功底,比如jQuery的基础运用以及API的熟悉度,除此之外要有牢固的javascript、DOM、CSS的基础功底,甚至还需要理解常见的设计模式、数据结构等等。当然大家也不要被这些给吓住了,理解,总是需要一种慢慢的学习过程。
老师告诉你能学到什么?
通过本课程的学习,您可以由浅入深地剖析jQuery库的设计与实现。 其中我们围绕的重心: 1、设计理念 2、结构组织 3、接口设计 4、模式运用 5、场景套用

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!