经过了前面的简单介绍,正式开始分析jQuery的源码。
jQuery 核心函数:
1. jQuery([sel,[context]])
2. jQuery(html,[ownerDoc])1.8*
3. jQuery(callback)
4. jQuery.holdReady(hold)
创建jQuery对象的函数用途有:
1. 创建jquery空对象。
2. 创建选择器筛选document元素。
3. 动态创建document元素。
4. 回调函数。
5. 其他特殊用途。包装对象。
几篇序之中,已经有介绍jQuery这个函数了,实际执行的是 new jQuery.fn.init( selector, context )
。这次更详细的介绍一下。
创建jquery空对象
jQuery.fn.init = function( selector, context, root ) {
/**
* 如果选择器为空或者为false,则返回本身。 即“$()”
* 如果你打印"$()"的话,可以看到他返回的是一个“[]”
* 那他是如何做到的呢?
* 请打印这一行:“a = { length:0, splice: function(){} }”
* 很奇妙吧,他也是返回“[]”
* 管中窥豹,可以推测浏览器把含有length属性和splice方法的对象解释为数组
**/
if ( !selector ) {
return this;
}
}