类似这样的dom结构
<div class="a">
<div class="a1">
<div class="a11"></div>
</div>
<div class="a2"></div>
<div class="a3"></div>
</div>
<div class="b">
<div class="b1"></div>
<div class="b2"></div>
<div class="b3"></div>
</div>
想用js递归生成这样的JSON树结构
[
{
className:"a",
children:[
{
className:"a1",
children:[
className:"a11",
children:[]
]
},
{
className:"a2",
children:[]
},
{
className:"a3",
children:[]
}
]
},
{
className:"b",
children:[
{
{
className:"b1",
children:[]
},
{
className:"b2",
children:[]
}
{
className:"b3",
children:[]
}
}
]
}
]
a b 标签的父级是body
我想传一个body 的参数进一个方法 例如
fn( document.body )
然后返回 以上JSON
你好,我给你写了一个函数:
function nodeTree(node) {使用方法很简单,打开任意页面,在控制台先执行上面的函数声明,然后调用函数显示指定节点的属性列表:
nodeTree(document.body); // or返回结果直接就会覆盖body中的内容,并高亮缩进显示,查看非常方便
递归显示内容比较多,执行会略慢,现在控制在显示三级,调用时需略作等待
希望是你想要的结果,望采纳~~
追问能输入和我上面结构一样的JSON吗? 麻烦您了
追答好吧,帮人帮到底,送佛送上西,来个完整版的,代码超限,贴不上来,请下载附件:
console.log只是为了在控制台查看输出的json结构是否正确,实际使用需删除
wrap只是为了显示最终结果新增的标签,与题中所列结构无关,请自行删除