Czy można przeprowadzić wyszukiwanie przy querySelectorAllużyciu wielu niepowiązanych ze sobą warunków?
Tak, ponieważ querySelectorAllakceptuje pełne selektory CSS, a CSS ma koncepcję grup selektorów , która pozwala określić więcej niż jeden niepowiązany selektor. Na przykład:
var list = document.querySelectorAll("form, p, legend");
... zwróci listę zawierającą dowolny element, który jest form lub p lub legend .
CSS ma również inną koncepcję: ograniczanie oparte na większej liczbie kryteriów. Po prostu łączysz wiele aspektów selektora. Na przykład:
var list = document.querySelectorAll("div.foo");
... zwróci listę wszystkich divelementów, które również ( i ) mają klasę foo, ignorując inne divelementy.
Możesz je oczywiście łączyć:
var list = document.querySelectorAll("div.foo, p.bar, div legend");
... co oznacza „Uwzględnij każdy divelement, który również ma fooklasę, każdy pelement, który również ma barklasę, i każdy legendelement, który również znajduje się wewnątrz a div”.