При использовании querySelectorAll, есть ли способ ссылаться на непосредственные дочерние элементы узла контекста, без использования идентификаторов?

Скажем, у меня есть структура HTML, как

<div id="a">
  <div id="b">
    <div id="c"></div>
  </div>
</div>

Чтобы сделать запрос для дочерних элементов & quot; a & quot; используя querySelectorВсе я могу сделать что-то вроде

//Get "b", but not "c"
document.querySelectorAll('#a > div')

My question is: возможно ли сделать это без идентификатора, ссылающегося на узел напрямую? Я пытался делать

var a_div = document.getElementById('a')
a_div.querySelectorAll('> div') //<-- error here

но я получаю сообщение об ошибке, сообщающее, что используемый мной селектор недействителен.

И если кому-то интересно, мой реальный вариант использования будет чем-то более сложным, например & gt; .foo .bar .baz & apos; поэтому я предпочел бы избежать ручного обхода DOM. В настоящее время я добавляю временный идентификатор в корневой div, но это выглядит как уродливый хак ...

Ответы на вопрос(3)

Ваш ответ на вопрос