0

关于这个主题的另一个帖子说,我能做出的唯一回复必须是一个答案。所以,这里是关于这个主题的另一个线程来问一个澄清的问题。

本教程:

http://bost.ocks.org/mike/nest/

表示 d3.select("tbody td") 的父节点是 html。我得到的是父节点是tr。或者,d3.select("tbody td")[0][0].parentNode 是 tr。

在关于这个主题的另一个线程中:

请帮助我理解 select() 和 selectAll() 之间的区别

Bostock 先生说 select("#something").selectAll("td") 的父节点是 id 为 #something 的节点。我得到的是父节点是tr。

我错过了什么?

4

1 回答 1

0

混淆是因为术语过多。D3 选择是二维数组,第一层包含“父节点”,第二层包含“子节点”。我看到有时用来代替父级的另一个术语是“组”。

您正在查看的d3.select("tbody td")[0][0].parentNode是 DOM 树中的物理父节点。

select/selectAll选择根据您链接调用的方式维护自己的分组(或父/子)结构。子节点实际上可以是实际 DOM 中父节点后代的任意组合。

于 2013-08-02T06:28:49.983 回答