我一直在玩示例 "Using D3.js to present XML as HTML Table" , 尝试学习 D3.js API。我想我已经掌握了窍门,但我无法真正理解 .selectAll()
的含义。确实如此,the documentation对它不是很有帮助。
如果您查看示例,第 17 行:var td = tr.selectAll("td")
.我也可以写成 tr.selectAll("tr")
它将返回完全相同的表格/页面。事实上我可以写tr.selectAll("SomethingCompletelyRandom")
它仍然可以工作,但我无法删除 .selectAll()
.
这里发生了什么? .selectAll()
是什么意思做?它如何依赖于选择器?
最佳答案
您指向的 API 链接在先前的选择中使用 selectAll(它是一个子选择),因此您查看可能没有意义(并且可能会令人困惑。)要查看的文档的相关部分是here ,更一般地说,该选择文档页面的介绍,here .
使用两者的原因 td
和 tr
将在这里起作用的是,在这两种情况下,初始选择都不返回任何内容(因为您从中选择的位置 tr
尚未附加任何内容。)选择您将要创建的内容是标准做法,因为当将此扩展到动画并更新它时,它变得非常重要。
我建议查看 Three Little Circles和 Thinking with Joins教程
关于d3.js - .selectAll() 究竟是做什么的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15259667/