javascript - 将 D3 线条样式改回常规

标签 javascript css d3.js

这个问题可能真的很简单,但出于某种原因我无法弄明白,也无法在网上找到任何相关信息。

我像这样创建以下虚线:

   linkContainer.enter()
        .append("line")
        .style("stroke-dasharray", ("3, 3"))
        .attr("class", "link")
        .on("click", clickLine);

我想做的是,当单击该行时,我想将其改回实线,即不再有破折号。

function clickLine() {
    d3.select(this).transition()
     .duration(750)
     .style("stroke", "lightsteelblue");
}

是否有任何样式功能可以将线条从虚线过渡到连续线?再次感谢。

最佳答案

对于过渡,我将修改 stroke-dasharray 值以不再包含间隙——第一个数字是破折号的(相对)长度,第二个数字是间隙。所以你需要做的就是将第二个数字设置为 0:

d3.select(this).transition()
  .style("stroke-dasharray", "3,0");

完整演示 here .

关于javascript - 将 D3 线条样式改回常规,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29708521/

相关文章:

Javascript 计算多个 HTML 输入值的总和

javascript 重新加载页面时出错

css - 带子菜单的粘性导航

javascript - 鼠标悬停事件未在 xhtml 元素上触发 - d3.js

javascript - 在 D3 v4 中,如何正确对齐轴?

javascript - 使用 jQuery 创建后如何单击按钮?

javascript - Ionic 3 JSON 解析错误

javascript - 如何更改使用 d3.js 创建的圆环图的颜色?

css - 在实际悬停元素之前发生的动画

javascript - 动态路径变量来播放音频.mp3 文件 如何? d3 javascript CoffeeScript