Tengo una construcción HTML que se parece al siguiente código:
<div id='intro'>
<svg>
//draw some svg elements
<svg>
</div>
Quiero poder agregar algunos elementos al SVG definido anteriormente usando javascript y DOM. ¿Cómo lograría eso? estaba pensando en
var svg1=document.getElementById('intro').getElementsByTagName('svg');
svg1[0].appendChild(element);//element like <line>, <circle>
No estoy muy familiarizado con el uso de DOM, o cómo crear el elemento que se pasará a appendChild, así que ayúdeme con esto o quizás muéstreme qué otras alternativas tengo para resolver este problema. Muchas gracias.
fuente
Uncaught TypeError: Cannot read property 'setAttribute' of null
.newElement.setAttribute()
de las veces usa para establecer el atributo como opuesto anewElement.setAttributeNS()
, al menos en Chrome.Si está lidiando mucho con svg usando JS, le recomiendo usar d3.js. Inclúyelo en tu página y haz algo como esto:
d3.select("#svg1").append("circle");
fuente