我编译我的问题分解成最小的工作示例在此fiddle:d3.js不同选择之间的混合数据
HTML:
<div id='test'></div>
JS:
var data = d3.range(10);
var svg = d3.select('#test').datum('hello').append('svg');
var path = svg.append('g')
.append('path')
.data([data])
.attr('class','line');
alert(svg.select('.line').data());
此代码警报hello
,这是数据绑定到div
选择,不是的路径选择,这是什么我会预料到的。
为什么我看到这种行为?
只是澄清 - 通过使用'.select()'你只覆盖绑定到第一个元素的数据。所有其他'.line'元素仍然具有早先绑定到它们的数据。 –
@LarsKotthoff True。好点子。 – meetamit