js原生递归获取,直接源码 :
<script>
var child = document.children;
var arr = [];//用来存放获取到的所有的标签
function fn(obj){
for(var i=0;i<obj.length;i++){
if(obj[i].children){//当当前元素还存在子元素的时候,递归
fn(obj[i].children);
}
arr.push(obj[i]); //遍历到的元素添加到arr这个数组中间
}
}
fn(child);
console.log(arr);//打印出最后获取到的结果
</script>