使用DOM的createElement创建空元素

时间:2018-05-11 20:48:49

标签: javascript html dom svg createelement

问题是我想用JavaScript动态创建svg文件。但是当绘制路径时,它不会渲染到屏幕上(最后2~3个小时我正在寻找问题)......这就是它...当用document.createElement创建元素时,我们得到{ {1}}。但必须将path元素创建为空元素 - <element> </element>。 所以。如何使用<path .../>创建空元素?或者也许我不能用document.createElement做到这一点并且必须使用JQuery来做这个?

document.createElement

1 个答案:

答案 0 :(得分:0)

SVG具有特殊的命名空间要求。您需要使用document.createElementNS

document.createElementNS('http://www.w3.org/2000/svg', 'path');

示例:

&#13;
&#13;
let b1b2 = document.createElementNS('http://www.w3.org/2000/svg', 'path');

b1b2.setAttribute('d', 'M0 0 L100 100');
b1b2.setAttribute('fill', 'none');
b1b2.setAttribute('stroke', 'red');
b1b2.setAttribute('stroke-width', '5');

document.getElementById('svg').appendChild(b1b2);
&#13;
<svg id="svg"></svg>
&#13;
&#13;
&#13;