30

我有以下序列animationTransform

<animateTransform attributeName="transform" attributeType="XML" type="rotate" from="0" to="30" begin="0s" dur="0.4s" fill="freeze"/>
<animateTransform attributeName="transform" attributeType="XML" type="rotate" from="30" to="0" begin="0.4s" dur="0.4s" fill="freeze"/>

如果可以在不使用脚本的情况下循环这个序列?

repeatCount="indefinite"我可以通过使用我想按顺序循环整个序列来将单个动画设置为循环。

4

3 回答 3

40

已经想通了。有兴趣的可以解决:

<animateTransform id="anim1" attributeName="transform" attributeType="XML" type="rotate" from="0" to="30" begin="0s; anim2.end" dur="0.4s" fill="freeze"/>
<animateTransform id="anim2" attributeName="transform" attributeType="XML" type="rotate" from="30" to="0" begin="anim1.end" dur="0.4s" fill="freeze"/>
于 2010-09-02T19:05:54.593 回答
35

animateTransform您还可以通过提供values带有分号分隔列表的属性来在单个循环中循环:

<animateTransform attributeName="transform" type="rotate"
     values="0;30;0" begin="0s" dur="0.8s" fill="freeze"
     repeatCount="indefinite" />

这是一个示例(在 Firefox 4.0 和 Chrome 中检查)。

于 2010-12-22T11:43:46.093 回答
8

也可以添加/减去(毫秒)秒:

  begin="anim2.end-500ms"
于 2011-11-01T10:25:20.197 回答