请马上登录,朋友们都在花潮里等着你哦:)
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 马黑黑 于 2024-9-13 20:10 编辑
以下代码在svg里绘制一个圆,<circle>标签里包含一个animate动画,该动画会令其父元素按动画标签所描述的方式运动。下面是代码和效果演示:
<svg width="600" height="150" style="border:1px solid gray;fill:steelblue;stroke: none">
<circle cx="50" cy="75" r="30">
<animate
attributename="cx"
values="50;550;50"
dur="6s"
begin="0s;m1.end"
id="m1"
/>
</circle>
</svg>
动画代码解释:3~9行代码我们分行写以便可以更好地观察理解。下面是动画代码说明——
第4行:指定 animate 动画要改变的 circle 标签属性 cx,即圆心水平方向位置; 第5行:values 属性可以替代 from 和 to/by 属性,值至少包含两组用于描述运动的数值,各组数值间用分号隔开。这里,令圆心 cx 坐标从50(像素)出发,移动到550,再移动到原点50; 第6行:一个运动周期的时长,6秒; 第7行:begin 属性用来触发动画,支持多值,值间用分号隔开。0s 表示0秒开始运行动画,即页面一打开就运行,m1.end 表示,id="m1" 的动画结束(end)时触发; 第8行:给 animate 动画标签赋予 id 标识。这里请特别留意第7行代码的动画触发条件之一:自身运行结束。
本例没有设置repeatCount="indefinite"却能永动运行动画,关键点在代码7、8行。
|