我有一个svg文本数组:
var texts = []; //for svg text objects
function create() {
for(var i=0; i<6; i++) {
var d = 10;
var n = d-1;
var text = document.createElementNS(NS, 'text');
var data = document.createTextNode(d);
text.setAttributeNS(null, "id", "text"+i);
texts.push(text);
var t = texts[i];
document.getElementById('svgOne').appendChild(t);
change(n);
d--;
}
}
function change(n) {
//change
}
如何更改文字“d”的值 - &gt; “N”?
我已经使用了node.nodeValue但是没有工作。
t.firstChild.value = n;
我不想使用另一个js库。
有没有简单的方法来改变价值?
答案 0 :(得分:0)
要更改SVG文本元素中显示的文本,可以设置SVG文本元素的子文本节点的nodeValue。例如......
var svgTextElement = document.getElementById("text1");
var textNode = svgTextElement.childNodes[0];
textNode.nodeValue = "New text.";
请注意,您的代码未将文本节点添加到svg文本元素中。你需要调用appendChild()方法。例如......
var text = document.createElementNS(NS, 'text');
var data = document.createTextNode(d);
text.appendChild(data);