使用svg.js库包装现有的SVG元素

时间:2015-01-04 18:09:44

标签: javascript svg svg.js

如何在<svg>中包含现有的svg.js元素?

例如:

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

我知道这可以用svg.js很容易构建,但我把它作为我的问题的例子。

var existingSvg = Svg.<some-method>(document.querySelector("svg"));
existingSvg.children(); // circle

我该怎么做?

我尝试使用SVG('<id-ofsvg-element>'),但children()返回一个空数组。

2 个答案:

答案 0 :(得分:2)

plugin called svg.absorb.js可让您导入现有的SVG。要使用它,请执行

draw.absorb(element)

答案 1 :(得分:2)

带有新答案的老问题: 在v2中,svg.js可以通过简单地调用SVG.get('id')来获取svg的其他实例,然后将返回此svg的实例

//编辑:为确保所有方法都正常工作,当您的文档中没有其他SVG时,应调用SVG.prepare(element)。我认为这是一个应该修复的错误

// EDIT2:甚至可以使用SVG(&#39; id&#39;)来获取根实例。这也会使对SVG.prepare()的调用过时