我想知道它是否可能以及如何绘制已经绘制的 SVG。假设我用 SVG 绘制了一些东西,但我想添加另一个元素,而不是再次绘制所有地图或修改原始 cod。
问问题
65 次
1 回答
1
是的,这是可以做到的。实际上,这是 svg 的优点之一。这是一个例子:
<!DOCTYPE html>
<html>
<head>
<title>HTML5 SVG demo</title>
</head>
<body>
<h1>SVG DEMO</h1>
<svg id="circle" height="200" xmlns="http://www.w3.org/2000/svg">
<circle id="greencircle" cx="30" cy="30" r="30" fill="green" />
</svg>
<script type="text/javascript">
var rect = document.createElementNS('http://www.w3.org/2000/svg', 'rect');
rect.setAttributeNS(null,"id", "myrect");
rect.setAttributeNS(null,"fill", "red");
rect.setAttributeNS(null,"stroke", "black");
rect.setAttributeNS(null,"stroke-width", "5");
rect.setAttributeNS(null,"x", "100");
rect.setAttributeNS(null,"y", "100");
rect.setAttributeNS(null,"width", "100");
rect.setAttributeNS(null,"height", "50");
var svg = document.getElementById("circle");
svg.appendChild(rect);
</script>
</body>
</html>
于 2013-05-04T10:47:11.673 回答