如何将JS函数的结果解析为SVG对象?

时间:2013-01-18 21:52:01

标签: javascript parsing svg call geometry

<script type="text/ecmascript">
<![CDATA[
function setCoordinates(evt) {
var centerX = Math.round(Math.random() * 1000);
var centerY = Math.round(Math.random() * 1000);      
evt.target.setAttributeNS(null,"cx",centerX);
evt.target.setAttributeNS(null,"cy",centerY);
}
]]>
</script>

这是我的功能。 我真的不知道如何解析(不确定这是否是正确的词)结果是圆圈中的属性。

假设我的圈子如下:

<circle cx="0" cy="0" r="10" fill="red" />

调用函数所需的Javascript是什么,从而将属性值解析为圆?

1 个答案:

答案 0 :(得分:2)

我认为您不希望涉及某个活动。你可能想要像

这样的东西
function setCoordinates(circle) {
  var centerX = Math.round(Math.random() * 1000);
  var centerY = Math.round(Math.random() * 1000);      
  circle.setAttribute("cx",centerX);
  circle.setAttribute("cy",centerY);
}

(如果您正在使用setAttributeNS()命名空间,则不需要null。)

如果你给你的圈子一个ID,比如

<circle cx="0" cy="0" r="10" fill="red" id="myCircle"/>

然后您可以使用类似

的代码更改坐标
setCoordinates(document.getElementById("myCircle"));