不能同时为 2 个对象设置动画

Can't animate 2 objects at the same time

所以我终于设法让我的对象正确移动和旋转。

现在我想同时移动和旋转2条线。但是,当创建新行时,较早的行将停止工作。尽管移动和旋转不再起作用,但对象仍然存在,值等仍然正确。

在检索有关 lineObject 的信息时,我得到了它们两个的唯一信息。 移动和旋转功能都被正确调用和循环。

创建新属性时,set 属性似乎已被破坏。

这里出了什么问题?

this.lineObject.setAttribute(parameters); 好像什么都没做。

http://codepen.io/anon/pen/WQrXPo

问题在于如何在 Draw 函数中创建线标记。 当您使用 innerHTML 时,实质上是重新创建容器的全部内容。这意味着当您绘制第二条线时,您的第一条线将成为孤立元素,并会创建一个新元素取而代之。

相反,您应该使用 appendChild。参见 http://www.w3schools.com/jsref/met_node_appendchild.asp

此外,当您创建线条元素时,请查看 add a new line in svg, bug cannot see the line 否则你的线条将不可见。

如果不使用任何库,js 中的低级动画非常不舒服并且需要很多行代码。 也许 CSS3 可以帮到你?看到这个 tutorial.

我正在为您的案例编写示例。参见 plnkr