function reDrawLink() {
for (var i = 0; i < prevNodes.length; i += 2) {
paths = d3.selectAll('path.links').filter(function (d) { return d.source.y == prevNodes[i + 1] && d.target.y == prevNodes[i] });
var tempLink = d3.svg.diagonal()
.source(function (d) { return { "x": changedNodes[i+1].x0, "y": d.source.x }; })
.target(function (d) { return { "x": changedNodes[i].x0, "y": d.target.x }; })
.projection(function (d) { return [d.y, d.x]; });
paths.attr('d',tempLink);
}
}
在上面的函数中,我正在更新路径的d属性。正在点击功能上调用此函数。
d3.selectAll('path.links').each(function (d, i) {
var path = d;
});
我没有在上面的变量中获得更新属性的路径。相反,它仍然给我带有旧属性的路径。 任何人都可以帮我解决我的错误。