2016-02-04 78 views
0

我想在一行中點擊一組0/1 svg文本元素,翻轉。d3js更新模式;鏈式不同?

我跟着d3js更新模式,用update()點擊。它沒有工作 shown here (live code on tributary)

然後我從這個線改變

 t1.enter().append("text").attr("y",205).attr("x",function(d,i) {return(40+i*80-4)}).text(function(d){return d}) 

.attr( 「填充」, 「紅色」);

t1.enter().append("text").attr("y",205).attr("x",function(d,i){return(40+i*80-4)}); 
t1.text(function(d){return d}).attr("fill", "red"); 

現在,它的工作shown here (live code on tributary)

換句話說,我打破了「鏈式」在.text(function ...)

電話,但鏈中的原因,不應該都返回相同的對象?

回答

1

在第一個代碼片段中,您將設置enter選擇的文本。在每個額外的update()調用中,沒有任何內容會輸入選擇內容,因此文本不會更新。

在第二個代碼片段中,您正確設置了較大的update選擇中的文本。

注意,t1是更新選擇。 t1.enter()是輸入選擇。