【Sizzle学习】之关于【初探 jQuery 的 Sizzle 选择器】这篇文章里的小bug

【题记】不可否认,这篇文章写得非常好,但是今天我在看sizzle源码的时候,发现这文章有一地方说的不妥。重现:当selectors为"p.class1>p.class2",jquery的切割器会把selectors切割成["p.class1", ">", "p.class2"],这种情形,sizzle采用从右向左的形式查找,文章中时这么说的:

1.先查找页面上所有的p

2.循环所有的p,查找每个p的父元素

1.如果不是p,遍历上一层。

2.如果已经是顶层,排除此p。

3.如果是p,则保存此p元素。

【我的理由】我觉得sizzle是,对于支持getElementsByClassName这个方法来说,是查找所有的.class2的元素,然后再过滤,对于不支持它的浏览器,会直接跳过这一步