子要素を検索するのにquerySelectorAll
を使用すると、私は奇妙な動作に遭遇します。Element.querySelectorクエリHTML要素の子要素のときの奇妙な動作
我々は、次のHTML要素の木があります:最初のDIVを撮るとき
<div class="channels-featured-section">
\t <div class="yui3-video-coverage-item ">
\t \t <span class="now-playing">NOW<br>PLAYING</span>
\t \t <a href="#" class="yui3-video-coverage-item-trigger">
\t \t \t <div>
\t \t \t </div>
\t \t \t <p></p>
\t \t \t <div class="yui3-video-coverage-item ">
\t \t \t \t <span class="now-playing">NOW<br>PLAYING</span>
\t \t \t \t <a href="#" class="yui3-video-coverage-item-trigger">
\t \t \t \t \t <div></div>
\t \t \t \t \t <p>?</p>
\t \t \t \t </a>
\t \t \t </div>
\t \t </a>
\t </div>
</div>
をし、あなただけの内部最もDIV <div class="yui3-video-coverage-item-img-wrap"></div>
を取得すると仮定し、実際それはあなたのすべてを与えてelement.queryAelectorAll("div div div div")
作りますその小さな木の中のDIV要素。
同じ要素に対して次のようにクエリを実行します。element.queryAelectorAll("div div div div div div div div div div")
同じ結果が得られます。
現在、DOM要素の階層はあまり多くありません。
それはとても奇妙で、私は何時間もそれについて戸惑いました。 DOMのdocument
レベルから
Element.prototype.querySelectorAll
クエリと現在の内部ではありませんすべての結果をフィルタリング: