我现在正在阅读Sizzle.js的代码,并对以下内容感到困惑:
newContext = rsibling.test( selector ) && testContext( context.parentNode ) || context;
。
这部分修复了在Element上下文之外查找的qSA方法。但我不明白为什么我们应该在兄弟姐妹的时候创建newContext context.parentNode而不是context。
google之后我没有任何用处。也许我使用错误的关键字。
Sizzle = $.find;
div = document.getElementsByTagName('div')[0];
alert(Sizzle('p+span',div));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
<p></p>
<span></span>
</div>
我在上面进行了测试,得到了正确的答案。所以我不知道为什么还要使用parentNode。
任何人都可以为我解释一下吗? 非常感谢。 :)