摘要:
Callbacks模块实质上就是一个回调函数队列(当然吹得很牛逼。。比如“提供了一种强大的方法来管理回调函数队列”),之所以介绍它是因为后面的Derferred模块基于它。Callbacks生成时接收四个设置:once(只触发一遍),memory(记录前一次的触发传入参数,disable时是否清空队列),unique(确保队列中同样的函数只有一个),stopOnFalse(当调用某一个回调函数返回false时则停止触发)例:jQuery.Callbacks('once memory')Callbacks模块还有几个API,add,remove,has,empty,disable 阅读全文
摘要:
这篇也没什么好说的,初始化jQuery对象的函数要处理多种情况,已经被寒冬吐槽烂了。关联节点获取函数主要基于两个工具函数dir和sibling,前者基于指定的方向遍历,后者则遍历兄弟节点(真的不能合并?)。后面的一些API则主要调用这两个函数。大几百行代码,不过逻辑很简单// Initialize a jQuery object// A central reference to the root jQuery(document)var rootjQuery, // Use the correct document accordingly with window argument (sandbo 阅读全文
摘要:
之所以把这部分放在这里,是因为这里用到了一些基本API,前一篇介绍过后才能使用。//jQuery通过find方法调用Sizzle引擎//jQuery通过find方法调用Sizzle引擎jQuery.find = Sizzle;jQuery.expr = Sizzle.selectors;jQuery.expr[":"] = jQuery.expr.pseudos;jQuery.unique = Sizzle.uniqueSort;jQuery.text = Sizzle.getText;jQuery.isXMLDoc = Sizzle.isXML;jQuery.contai 阅读全文
摘要:
这篇文章比较繁杂,主要就是把jQuery源码从上到下列出来,看我的注释就好了。jQuery源码对各种加载器做了处理。//阅读这个源码是请先了解一下概念,即时函数,工厂模式(function( global, factory ) { //这里之所以这样处理,是为了考虑CommonJS的环境,所以先检测是否有CommonJS的环境。 if ( typeof module === "object" && typeof module.exports === "object" ) { // For CommonJS and CommonJS-lik 阅读全文