Sizzle是一个纯 JavaScript CSS选择器引擎。jquery1.3开始使用Sizzle,Sizzle一反传统采取了相反的Right To Left的查询匹配方式,效率提高。
Sizzle完全独立于jQuery,若不想用jQuery,你可只用Sizzle实现,压缩3K多http://url.cn/J73IkN。
一般选择器的匹配模式(包括jq1.2之前),都是一个顺序的思维方式,在需要递进式匹配时,比如$(‘div span’) 这样的匹配时,执行的操作都是先匹配页面中div然后再匹配它的节点下的span标签,之后返回结果。
Sizzle则采取了相反Right To Left的实现方式,先搜寻页面中所有的span标签,再其后的操作中才去判断它的父节点(包括父节点以上)是否为div,是则压入数组,否则pass,进入下一判断,最后返回该操作序列。
性能上得到了提升,对比性能参考下图
另外,在很多细节上也进行了优化。
未完待续...
Sizzle是一款高效的纯JavaScript CSS选择器引擎,自jQuery 1.3版本起被采用。它通过采用从右到左的匹配策略提高了性能,并且可以在不需要整个jQuery库的情况下独立使用。
305

被折叠的 条评论
为什么被折叠?



