Có thể thực hiện tìm kiếm bằng querySelectorAllcách sử dụng nhiều điều kiện không liên quan không?
Có, vì querySelectorAllchấp nhận các bộ chọn CSS đầy đủ và CSS có khái niệm nhóm bộ chọn , cho phép bạn chỉ định nhiều bộ chọn không liên quan. Ví dụ:
var list = document.querySelectorAll("form, p, legend");
... sẽ trả về một danh sách chứa bất kỳ phần tử nào là form hoặc p hoặc legend .
CSS còn có một khái niệm khác: Hạn chế dựa trên nhiều tiêu chí hơn. Bạn chỉ cần kết hợp nhiều khía cạnh của một bộ chọn. Ví dụ:
var list = document.querySelectorAll("div.foo");
... sẽ trả về danh sách tất cả các divphần tử cũng ( và ) có lớp foo, bỏ qua các divphần tử khác .
Tất nhiên, bạn có thể kết hợp chúng:
var list = document.querySelectorAll("div.foo, p.bar, div legend");
... có nghĩa là "Bao gồm bất kỳ divphần tử nào cũng có foolớp, bất kỳ pphần tử nào cũng có barlớp và bất kỳ legendphần tử nào cũng bên trong a div."