Nói rằng tôi có một cấu trúc HTML nhưKhi sử dụng querySelectorAll, có cách nào để tham chiếu đến các nút con ngay lập tức của nút ngữ cảnh mà không sử dụng các ID không?
<div id="a">
<div id="b">
<div id="c"></div>
</div>
</div>
Để làm một truy vấn cho con cái "a" bằng querySelectorAll tôi có thể làm một cái gì đó giống như
//Get "b", but not "c"
document.querySelectorAll('#a > div')
Câu hỏi của tôi là: là nó có thể để làm điều này mà không có ID, tham chiếu nút trực tiếp? Tôi đã thử làm
var a_div = document.getElementById('a')
a_div.querySelectorAll('> div') //<-- error here
nhưng tôi gặp lỗi khi cho biết bộ chọn tôi đã sử dụng không hợp lệ.
Và trong trường hợp bất kỳ ai thắc mắc, trường hợp sử dụng thực của tôi sẽ phức tạp hơn như '> .foo .bar .baz' vì vậy tôi muốn tránh quá trình duyệt DOM thủ công. Hiện tại tôi đang thêm id tạm thời vào div gốc nhưng điều đó có vẻ giống như một hack xấu xí ...
Xem thêm: http://stackoverflow.com/questions/3680876/use-queryselectorall-to-retrieve-direct-children – natevw