以下代码(我只是提供了一段工作代码)根据时间动画了一些图像。类似Flash动画的东西,在某些时候图像开始在特定时间移动或帧数。我的问题是,有更好的方法吗?我知道我可以使用setInterval以外的东西。我正在计算经过的时间并根据时间间隔设置图像。
这是问题的ClassLoadImages.prototype.m_draw。
function doGameLoop() {
ctx.clearRect(0,0,600,400);
now = new Date();
totalSeconds = (now - start) / 1000;
last = now;
ctx.fillText("totalSeconds=" +totalSeconds ,10,100);
if (totalSeconds>2 && totalSeconds<6)
{
img2.m_draw(130);
}
if (totalSeconds>4 && totalSeconds<8)
{
img3.m_draw2(230);
}
if (totalSeconds>10){
start = new Date();//start again
}
img.m_draw(30);
// fi++;
}
var img= new ClassLoadImages(30,30);
var img2= new ClassLoadImages(30,30);
var img3= new ClassLoadImages(30,30);
</script>
答案 0 :(得分:0)
如果你想要像flash动画片段这样的东西,请查看github上的SpriteClip。 https://github.com/wolthers/SpriteClip.js