有什么方法可以在jquery svg中动画组的一部分吗?

时间:2011-03-03 14:07:43

标签: jquery svg

如何在jquery svg中动画部分组的动画?

我认为显而易见的解决方案是创建一个新组,然后将选定的节点添加到该新组并为其设置动画。但有没有办法将现有的svg节点添加到组中?

例如,我知道你可以这样做:

var g = svg.group({fill: 'red'});
var c1 = svg.circle(g, 75, 75, 20);
var c2 = svg.circle(g, 115, 75, 20);
var c3 = svg.circle(g, 155, 75, 20);
$(g).animate({svgTransform: 'translate(100)'}, 500);

但是,您可以创建一个组并向其添加现有节点吗?

否则,还有其他方法可以动态分组节点吗?

干杯。

1 个答案:

答案 0 :(得分:0)

你有没有试过这样的事情:

var svgns = 'http://www.w3.org/2000/svg';

var svgRoot = document.getElementsByTagNameNS(svgns, 'svg')[0];

var newGroup = document.createElementNS(svgns, 'g');
var $newGroup = $(newGroup);
svgRoot.appendChild(newGroup);

var c1 = svg.circle(g, 75, 75, 20);
$newGroup.append(c1);