如何使用递归遍历 DOM 元素及其所有子元素?
深度遍历 dom 元素
在 javascript 面试中,经常会遇到需要遍历 dom 元素及其子元素的任务。这涉及到根据某些条件获取和处理所有元素。
假设你收到一个 dom 元素 d_elem,要求遍历其所有子元素,包括不同层次的子元素。要实现这个任务,可以使用一种称为递归的方法。
以下 javascript 代码展示了如何递归遍历 dom 元素:
function recursive(el, callback) { if (!el.childNodes) return; for (var elIndex in el.childNodes) { recursive(el.childNodes[elIndex], callback); callback(el.childNodes[elIndex]); } } recursive(document.body, function(el){console.log(el)})
这个递归函数 recursive 逐级遍历 el 的所有子元素,并使用提供的回调函数 callback 对每个子元素执行操作。在本例中,回调函数用于在控制台中记录子元素。调用 recursive(document.body, function(el){console.log(el)}) 将遍历整个文档主体的内容并输出其所有子元素。
以上就是如何使用递归遍历 DOM 元素及其所有子元素?的详细内容,更多请关注www.sxiaw.com其它相关文章!