1

改编自“绑定二维数据”部分:http ://christopheviau.com/d3_tutorial/

dataset = new Array()
dataset[0] = ['first', 'second', 'third']

d3.select("#viz")
.append("table")
.style("margin", "0 auto")
.selectAll("tr")
.data(dataset)
.enter()
.append("tr")
.selectAll("td")
.data(function(d){return d;})
.enter()
.append("td")
.style("border", "1px black solid")
.style("padding", "10px")
.text(function(d){return d;})
.style('font-size', '18pt')


.transition().delay(1000)
.text('nothing')

.transition()
.delay(1000)
.text('test');

代码也托管在这里:http: //jsfiddle.net/LittleBobbyTables/vEfgu/

这会跳过文本应该说“无”的阶段并直接说“测试”。

我做错什么了吗?

4

1 回答 1

2

一个接一个地调用转换不一定“链接”它们,在您的示例中,在 1000 毫秒后,第一个和第二个转换将同时执行 - 所以您看不到第一个转换的结果。解决此问题的最简单方法是更改​​第二次转换的延迟:

.transition().delay(2000)
于 2012-07-06T23:47:31.637 回答