该示例如下所示:
a=[1,2,3,4,5];
svg.selectAll("rect").data(a)
a[1]=10;
a[4]=50;
svg.selectAll("rect").data(a)
a
的第二个和第五个元素被改变。我只想选择这两个元素并将它们的颜色设置为红色。但是,我不知道该怎么做,或者换句话说,在 d3.js 中选择这些更改的元素。 (据我所知,enter()
不能完成这项工作)。有没有人对此有想法?
最佳答案
可能有更好的方法来做到这一点:
//update data array
a[4]=50;
//color update elements
svg.selectAll('rect')
.filter(function(d, i){ return d != a[i]; })
.style('color', 'red')
//bind updated data
svg.selectAll('rect').data(a)
关于javascript - 选择/检测 d3.js 中更改的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20763045/