Dom D3.js:在追加后获取parentNode
我希望将循环中的元素附加到“root”div,然后返回DOM树以附加另一个元素/设置文本(在D3.js中) 所需结构:Dom D3.js:在追加后获取parentNode,dom,d3.js,append,structure,Dom,D3.js,Append,Structure,我希望将循环中的元素附加到“root”div,然后返回DOM树以附加另一个元素/设置文本(在D3.js中) 所需结构: root > div > div > text > div > div > text > ... 守则: 对于(变量i=0;i
root > div > div
> text
> div > div
> text
> ...
守则:
对于(变量i=0;i<10;i++){
d3.选择(“根”)
.附加(“div”)
.附加(“div”)
.parentNode
.文本(“文本”);
}
我假设您上面的代码只是为了说明,因为它可以写成:
d3.select("#root")
.append("div")
.text("text")
.append("div");
也就是说,您可以使用:
var div = d3.select("#root")
.append("div")
.append("div")
.select(function(){
return this.parentNode;
})
.text("text");
问题是。text
将覆盖子div
那么,为了避免这种情况,我们可以:
var div = d3.select("#root")
.append("div")
.append("div")
.select(function(){
return this.parentNode;
})
.insert("span","div")
.text("text");
示例。谢谢,这样做了—只做了一点小修改:我使用append(“span”).text(…)将文本放在div后面。