我正在开发一个可视化工具,它使用的是大脑的svg图像。现在,这个svg有一个填充了颜色的路径。我希望遍历所有这些路径,将填充颜色设置为白色,但由于某种原因,我无法获得元素。
这个项目可以看到这里。svg位于div
中,我甚至给div分配了一个标识符brain
。svg本身有一个id svg2
。到目前为止,我已经尝试了以下几点:
function clearBrainColors() {
var brain = d3.select("#svg2");
console.log(brain);
var paths = brain.selectAll("path");
console.log(paths.length);
brain.selectAll('path').each(function(d,i) { console.log(this); });
}
但是它在选择的数组组件中输出null,在paths.length中输出0。
我也尝试过使用行,例如
var brain = d3.select("#brain svg");
和var brain = d3.select("#brain svg#svg2");
,但它们也不起作用。
那么,如何使用d3选择大脑svg呢?
发布于 2016-08-22 00:38:05
您可以尝试setTimeOut(),下面的示例如下所示
setTimeOut(function() {
var brain = d3.select("#svg2");
console.log(brain);
}, 1000);
这可能是svg当场生成的,d3此时无法得到。
希望有此帮助:)
https://stackoverflow.com/questions/30371513
复制