sizzle的工作原理是先搜尋頁面中所有的span標籤,再在其後的操作中才去判斷它的父節點(包括父節點以上)是否為div,是則壓入數組,否則pass,進入下一判斷,最後返回該操作序列。
sizzle
一般選擇器的匹配模式(包括
jq1.2之前),都是一個順序的思維方式,在需要遞進式匹配時,比如$(‘div span’)這樣的匹配時,執行的操作都是先匹配頁面中div然後再匹配它的節點下的span標籤,之後返回結果。
Sizzle則採取了相反Right To Left的實現方式,在很多細節上也進行了優化。
Sizzle,作為一個獨立全新的選擇器引擎,出現在jQuery1.3版本之後,並被
John Resig作為一個開源的項目,可以用於其他框架:Mool,
Dojo,
YUI等。