1

我创建了一个组,如下所示:

 d3.select("#" + chartId).selectAll("g.barChart")
    .append("g")
        .attr("class", "bar")
        .attr("id", chartId)
        .attr("style", "opacity:0");

再往下看代码,我有这个,所以组会淡入:

graph = d3.select(".bar#"+chartId);
graph.transition().delay(300).duration(2000).attr("style", "opacity:1.0");

我不知道为什么这些组在淡入之前会闪烁一次或多次。当我注释掉上面的过渡线时,这些组保持不可见。这应该意味着没有其他原因导致闪光。我被难住了...

4

1 回答 1

1

当在 D3 上应用转换时,style尝试从字符串中插入值,可能会出现问题。尝试将不透明度转换为属性,而不是将其包含在style

 d3.select("#" + chartId).selectAll("g.barChart")
    .append("g")
        .attr("class", "bar")
        .attr("id", chartId)
        .attr("opacity", "0");

graph = d3.select(".bar#"+chartId);
graph.transition().delay(300).duration(2000).attr("opacity", "1");
于 2012-10-15T16:26:57.693 回答