我一直在研究示例"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的简介。

在此处同时使用tdtr的原因是,在这两种情况下,初始选择均不返回任何内容(因为您从中选择的位置tr尚未附加任何内容。)选择您的内容是标准做法之所以会创建,是因为将其扩展到动画并进行更新变得非常重要。

我建议您看一下Three Little CirclesThinking with Joins教程

关于d3.js - .selectAll()到底是做什么的?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15259667/

10-15 20:55