如何在<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()
返回一个空数组。
答案 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()的调用过时