我想实现音乐播放器中的一个播放的时候,图片中间的旋转动画,点击播放,图片不停的旋转,暂停的时候能从停的时候开始播,而不是从头开始播,效果和QQ音乐播发器效果差不多
你用什么实现?Flash、CSS3还是Canvas?
我觉得不论用什么方式,思路都是一样的:
首先你要有一个计时器。这个计时器每隔一段时间(例如20毫秒),就去改变要旋转的那个元素的角度(例如1°),当然也可能是其他属性。
然后你有两个按钮:暂停和恢复,当然也可能是一个按钮的两种状态。
当你点击暂停时,计时器暂停,从而元素暂停旋转;当你点击恢复时,计时器恢复,从而元素继续旋转。
只要按照这个逻辑,元素就应该从暂停的地方继续旋转,而不是重新从头旋转。
PS:当然我说的那个计时器也是,也可能是用requestAnimationFrame
之类的,反正原理都一样。
你查看下播放函数是否支持指定开始播放位置
暂停的时候保存当前的播放位置
将上次暂停的位置信息传递给播放函数,让其从执行位置播放
可以使用css3的animation实现图片的旋转
具体可以看demo