Ist es möglich, eine Suche unter querySelectorAllVerwendung mehrerer nicht zusammenhängender Bedingungen durchzuführen ?
Ja, da querySelectorAllvollständige CSS-Selektoren akzeptiert werden und CSS das Konzept von Selektorgruppen hat , mit denen Sie mehr als einen nicht verwandten Selektor angeben können. Zum Beispiel:
var list = document.querySelectorAll("form, p, legend");
... gibt eine Liste zurück, die ein Element enthält, das ein form oder p oder ist legend .
CSS hat auch das andere Konzept: Einschränkung basierend auf mehr Kriterien. Sie kombinieren einfach mehrere Aspekte eines Selektors. Zum Beispiel:
var list = document.querySelectorAll("div.foo");
... gibt eine Liste aller divElemente zurück, die auch ( und ) die Klasse haben foo, wobei andere divElemente ignoriert werden.
Sie können sie natürlich kombinieren:
var list = document.querySelectorAll("div.foo, p.bar, div legend");
... was bedeutet "Schließen Sie jedes divElement ein, das auch die fooKlasse enthält, jedes pElement, das auch die barKlasse enthält, und jedes legendElement, das sich ebenfalls in a befindet div."