Javascript SVG:线条颜色

Javascript SVG:线条颜色,javascript,svg,Javascript,Svg,我有这样一个SVG行变量: var c_line = function (x1, y1, x2, y2, color) { var c_svgLine = document.createElementNS(NS, "line"); c_svgLine.setAttributeNS(null, "x1", x1); c_svgLine.setAttributeNS(null, "y1", y1); c_svgLine.setAttributeNS(null, "x2", x2); c_svgLi

我有这样一个SVG行变量:

var c_line = function (x1, y1, x2, y2, color) {

var c_svgLine = document.createElementNS(NS, "line");
c_svgLine.setAttributeNS(null, "x1", x1);
c_svgLine.setAttributeNS(null, "y1", y1);
c_svgLine.setAttributeNS(null, "x2", x2);
c_svgLine.setAttributeNS(null, "y2", y2);
c_svgLine.setAttributeNS(null, "class", "line");
c_svgLine.style.stroke = color;
c_svgLine.style.width = 5;
return c_svgLine;

};
行被创建为:g,是SVG文档

g.appendChild(c_line(50, 10, 100, 20,"red"));
在将颜色设置为红色的情况下,是否可以不使用名称red而使用原始值作为输入?因此,大致如下:

  g.appendChild(c_line(50, 10, 100, 20,"255,60,245")); 

我希望以这种方式设置颜色,因为我不希望数组中填充精致的颜色名称,例如
[“红色”、“黑色”、“蓝色”…]
,而是为我决定创建的任意多行生成随机颜色。

是的,您可以使用rgb、rgba和十六进制设置颜色,如图所示:

填充设置对象内部的颜色,笔划设置围绕对象绘制的线的颜色。您可以使用HTML中使用的相同css颜色命名方案,无论是颜色名称(红色)、rgb值(rgb(255,0,0))、十六进制值、rgba值等等

有几件事:

  • 使用“rgb(255,60245)”代替“255,60,45”
  • 使用strokeWidth而不是宽度
  • 工作示例

    var-NS=http://www.w3.org/2000/svg';
    变量c_线=函数(x1、y1、x2、y2、颜色){
    var c_svgLine=document.createElements(NS,“行”);
    c_svgLine.setAttributeNS(null,“x1”,x1);
    c_svgLine.setAttributeNS(null,“y1”,y1);
    c_svgLine.setAttributeNS(null,“x2”,x2);
    c_svgLine.setAttributeNS(null,“y2”,y2);
    c_svgLine.setAttributeNS(空,“类”,“行”);
    c_svgLine.style.stroke=颜色;
    c_svgLine.style.strokeWidth=5;
    返回c_svgLine;
    };
    var g=document.getElementById(“g”);
    g、 (c_线(50,10,100,20,rgb(0,60245));;
    g、 (c_线(70,10,150,10,rgb(255,60245));
    
    
    
    主要由链接组成的答案对网站没有帮助,因为随着时间的推移,链接往往会过时。取而代之的是从链接中复制一些相关信息,然后将链接作为信息的来源。啊,这么简单,我认为分配strkoe的唯一方法是通过.style.stroke=color;-但是我怎么,;我是由c_svgLine.setAttributeNS(空,“笔划”,颜色)完成的@Ross我用消息来源的相关信息更新了帖子。我现在已经更新了:)>但是谢谢你的回复和精彩的回答!我也会接受你的建议!