セレクタを使用するときにjQueryがDOMをどのようにトラバースするのか不思議でした。 "第1レベル"の各要素を検索し、それぞれの中を見ますか?それとも、それらの「第1レベル」要素のすべての子どもを1つずつ見ていますか?jQueryはどのようにDOMをトラバースしますか?
次のセレクタを与え、私はいくつかの簡単な例を挙げて想像かを説明してみましょう:
[1] <div>
[3] <div>
[5] <p id="target"></p>
</div>
</div>
[2] <div>
[4] <div>
<p></p>
</div>
</div>
など:
[1] <div>
[2] <div>
[3] <p id="target"></p>
</div>
</div>
<div>
<div>
<p></p>
</div>
</div>
$("div p#target")
それはより多くのように進んでいます
jQueryがSizzleJSを使用して、それはあなたの質問への答えはありませんが、多分そのドキュメントはあなたを助けることができます:http:// sizzlejs。 com /とhttps://github.com/jquery/sizzle/wiki/Sizzle-Home – Thys
JQueryは必ずしもシズルを使用するとは限りません。たとえば、 '$( '#mydiv')'はsizzleを使用しません。 chromeとfirefoxでは '$( '。mydiv')'はシズルを使用しませんが、IE <9ではそれを使用します。 – AlienWebguy
申し訳ありませんが、それがどのように動作するかを予測する方法はありません:/ – Pioul