一直做梦的猫

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  jQuery源码笔记

摘要:var Sizzle = function( selector, context, results, seed ) {......}jQuery选择器主体流程分析:1.将selector第一个逗号(如果有的话)之前的部分解析为若干个块表达式(例如"div > span.big"将被解析为"div", ">", "span.big"三个表达式块),存入parts数组中,逗号之后的字符串存入extra中2.如果parts中元素个数大于1,且selector中包含位置表达式,则采用left->right 阅读全文
posted @ 2013-05-30 12:19 一直做梦的猫 阅读(153) 评论(0) 推荐(0)

摘要:jQuery的数据缓存机制对于js Object和DOM node分别存在两种方式:情况一:对于js Object,数据就存储在Object本身,只不过数据都存储在Object下一个以“jQuery”开头的属性之下例如:var obj = {};$.data(obj, "username", "scott"); console.log(obj);此时obj为:{ jQuery16302287385049276054:{ username: "scott" }}情况二:对于DOM node,数据则存储在jQuery.cache之中nod 阅读全文
posted @ 2013-05-30 10:33 一直做梦的猫 阅读(227) 评论(0) 推荐(0)

摘要:jQuery源码分析-03构造jQuery对象-工具函数这篇文章对jQuery中扩展的一些工具函数做了下简要分析关于isPlainObject函数,isPlainObject分析与重构这篇文章指出其存在bug,history,location,navigator,screen可以顺序通过 isPlainObject的检测返回true.经本人测试,在ie8中确实存在bug返回true,但chrome中则返回的是false。经过仔细分析发现bug原因,若obj = window.location, 在ie8中第二个if语句的第一个判断条件obj.constructor的值为undefined,而在 阅读全文
posted @ 2013-05-15 15:32 一直做梦的猫 阅读(226) 评论(0) 推荐(0)