在createElementNS()之后更改字体颜色

时间:2014-10-31 07:36:35

标签: javascript svg

即时制作游戏并尝试在最后显示高分。当前的用户名应该以不同的颜色突出显示,但我无法使其工作。 当我尝试更改字体大小以进行测试时,它可以工作!

var nameSpan = svgdoc.createElementNS("http://www.w3.org/2000/svg", "tspan");

nameSpan.setAttribute("x", 130);
nameSpan.setAttribute("dy", 30);

var nameTextNode = svgdoc.createTextNode(record.name);

if (record.name == playerName){
    nameSpan.style.fontColor = "red"; // does not work
    nameSpan.style.color = "blue"; // does not work
    nameSpan.style.fontSize = "100px"; // works fine
}

nameSpan.appendChild(nameTextNode);

我尝试了不同的方法来应用颜色(其中2个可以在上面看到),但它始终保持黑色。

1 个答案:

答案 0 :(得分:2)

SVG文本未使用颜色着色。相反,它使用填充和描边,因此您可以单独为轮廓着色。将内容更改为nameSpan.style.fill = "blue",它应该适合您。