【发布时间】:2013-06-27 12:34:50
【问题描述】:
每个D3js初学者都一定有这个想法,我很确定。
我已经在这个东西上玩了几个小时了!!!!但是我不知道如何使用它,它们之间的区别是什么?
function(d){return d}
function(d,i){return d and some more custom code}
例如--->
var 数据 = [4, 8, 15, 16, 23, 42];
Function(d):::::
chart.selectAll("div")
.data(data)
.enter().append("div")
.style("width", function(d) { return d * 10 + "px"; })
.text(function(d) { return d; });
------------------------------------------------------------------------------------
Function(d*i):::::
chart.selectAll("rect")
.data(data)
.enter().append("rect")
.attr("y", function(d, i) { return i * 20; })
.attr("width", x)
.attr("height", 20);
【问题讨论】:
-
嗯,他们在做不同的事情?如果您不告诉我们使用它们的上下文(调用示例),我们将无法解释太多?
-
我只是在问一个一般性问题!!!只需通过示例进行一个小的基本解释即可。我一直在通过我经常看到的程序。所以只需基本的一般解释就可以了!!!
-
嗯,一般的答案是第二个函数比第一个函数做得更多。如果你不告诉我们你在某些程序中在哪里看到了这个,我们就不能做得更好(或者不得不像下面的 nnnnn 一样猜测)
-
好的,我会编辑我的问题!!!!
-
你读过
.attrdocumentation吗? "如果value是一个常量,那么所有元素都被赋予相同的属性值;否则,如果value是一个函数,那么函数会为每个选定的元素(按顺序)求值,并传递当前基准d和当前索引i,将this上下文作为当前DOM 元素。”
标签: javascript d3.js