2

我的意思是在我的 SVG 停止完成动画后,我希望动画重新开始并结束,然后重新开始,依此类推。

我试过了:

<svg>
  <animate repeatCount="indefinite"/>
</svg>

但它不起作用。

4

1 回答 1

3

请参阅w3 SVG 规范中的示例 animMotion01以获得一个相当简化的说明 SVG 动画的示例(包括使用):repeatCount="indefinite"

<svg width="5cm" height="3cm"  viewBox="0 0 500 300"
     xmlns="http://www.w3.org/2000/svg" version="1.1"
     xmlns:xlink="http://www.w3.org/1999/xlink" >
  
  <desc>Example animMotion01 - demonstrate motion animation computations</desc>
  
  <rect x="1" y="1" width="498" height="298"
        fill="none" stroke="blue" stroke-width="2" />
  
  <!-- Draw the outline of the motion path in blue, along
          with three small circles at the start, middle and end. -->
  <path id="path1" d="M100,250 C 100,50 400,50 400,250"
        fill="none" stroke="blue" stroke-width="7.06"  />
  <circle cx="100" cy="250" r="17.64" fill="blue"  />
  <circle cx="250" cy="100" r="17.64" fill="blue"  />
  <circle cx="400" cy="250" r="17.64" fill="blue"  />
  
  <!-- Here is a triangle which will be moved about the motion path.
       It is defined with an upright orientation with the base of
       the triangle centered horizontally just above the origin. -->
  <path d="M-25,-12.5 L25,-12.5 L 0,-87.5 z"
        fill="yellow" stroke="red" stroke-width="7.06"  >
    
    <!-- Define the motion path animation -->
    <animateMotion dur="6s" repeatCount="indefinite" rotate="auto" >
       <mpath xlink:href="#path1"/>
    </animateMotion>
    
  </path>
</svg>

于 2011-05-13T23:47:47.823 回答