如何使用 Snap.svg 操作现有组元素

How to manipulate existing group elements with Snap.svg

我们在 中有一个现有的 svg 文档,我们想用一个新元素替换一个组元素。 Snap.svg 可以吗?

var oldGroup = Snap.select("[id='" + oldGroupId + "']");

oldGroup.outerSVG(newGroup); //This is what I want to do but outerSVG is readonly

您不能仅使用 outerSVG 来替换元素。您没有包含足够的信息来给出完整的正确答案,因为我们看不到现有的元素是什么,但它可能类似于..

var parent = oldGroup.parent();
oldGroup.remove();
parent.add( newGroup ) 

这取决于 'newGroup' 是什么。如果它是一个 DOM 元素,我认为它会起作用。如果它只是一些 SVG 标记,你可能需要做类似

的事情
parent.add( Snap.parse( newGroup ) );