【发布时间】:2013-12-09 18:43:40
【问题描述】:
这是我想做的:
var a = Snap("#id");
var group = new SnapGroup(); // unfortunatly didnt find how to do it
// for some reasons i dont want to do a.group();
group.circle(5,5,5);
a.add(group);
这就是我所做的:
var a = Snap("#id");
s = Snap(); // creates a SVG element instead of a group
s.circle(5,5,5);
a.add(s);
它起作用了,圆圈被渲染了,但是我不能移动这个组:
s.attr({"x":60}); // the group doesnt move
实际上,当我们将 and <svg> 元素嵌入到另一个元素中时,它看起来像这样。然后就无法将嵌入的 svg 元素移动到父元素中。
我想知道如何在不做snapInstance.group() 的情况下创建组元素?然后将其添加到 Snap 实例中。
【问题讨论】:
-
你能解释一下为什么你特别不想使用 snapinstance.group() 吗?通常我会创建组和圈并添加它,然后对组执行平移变换,但由于某种原因,您正在消除明显的可能性,而没有解释原因(所以我们无法想出解决方法)。跨度>
-
因为我在一个与 Snap 实例没有依赖关系的对象中生成组。然后我希望这个对象能够创建一个组并与许多 Snap 实例共享它(克隆)。但看起来我将不得不重构这个对象以从它的方法中绘制 snap 实例上的组,而不是获取组并将其添加到 snapinstance 之后。
标签: javascript svg snap.svg