Я хочу создать элементы SVG из строки, например
var svgStr = '<svg width="100" height="100"><circle cx="50" cy="50" r="40" stroke="green" stroke-width="4" fill="yellow"/>';
, а затем добавить его к существующему элементу HTML, используя JavaScript. Пробовал много чего, но, похоже, застрял с этой ошибкой: https://i.stack.imgur.com/0XUXF.png
Я тоже пробовал это, но не заставил его работать: https://jsfiddle.net/ramnathv/rkkpfvfz/
Я был бы совсем не против, если бы вы могли объяснить это так, как это может понять шестилетний ребенок ^^
Спасибо большое за любую помощь!
<html>
<body>
<h2>Boolean Network</h2>
<button type="button" onclick="appendSVG1()">Next</button>
<button type="button" onclick="appendSVG2('svgAnchor', svgStr)">Next2</button>
<div id="svgAnchor" value="3">
</div>
<script>
var parser = new DOMParser();
var svgStr = '<svg width="100" height="100"><circle cx="50" cy="50" r="40" stroke="green" stroke-width="4" fill="yellow"/>';
function appendSVG1(){
anchor = document.getElementById("svgAnchor");
//nextState = parseInt(anchor.getAttribute("value")) + 1;
//anchor.setAttribute("value", nextState);
newSVG = parser.parseFromString(svgStr, "image/svg+xml");
anchor.appendChild(document.adoptNode(newSVG.documentElement));
}
function appendSVG2(id, xml_string){
var doc = new DOMParser().parseFromString(xml_string, 'application/xml');
var el = document.getElementById(id)
el.appendChild(el.ownerDocument.importNode(doc.documentElement, true))
}
</script>
</body>
</html> ```