在JavaScript中获取元素的每个子元素的每个子元素

时间:2019-03-21 18:35:09

标签: javascript html children

假设我有一个元素document.createElement("div"),我们将其称为myDiv myDiv.innerHTML = "<div><p></p></div>",现在myDiv有一个孩子:div。这个div有一个孩子p。我知道我可以使用myDiv来吸引myDiv.childNodes的孩子,而div可以使用myDiv.childNodes[0].childNodes的孩子。但是,现在我如何才能像现有的每个孩子一样,让每个孩子中的每个孩子都受益?示例:

myDiv.innerHTML = "<div><p></p><i></i></div></p></p>"
myDiv.someMethod((childs) => {
   // childs should return the `div`, the `div`'s childs (`p` & `i`) and `p` 
})

1 个答案:

答案 0 :(得分:1)

您可以使用Element.querySelectorAll

let div = document.createElement('div');
div.innerHTML = `<div><p></p><i></i></div><p></p>`;

console.log([...div.querySelectorAll('*')])