是否有其他方法可以在不使用setInterval()或setTimeout()的情况下为在画布中移动的对象设置动画效果?
原因是因为当使用useInterval()时,它有点滞后。我不知道为什么它也会滞后。
我尝试删除setInerval(),一切正常,没有滞后,但没有动画。
答案 0 :(得分:2)
有没有人知道是否有其他方法可以在不使用setInterval()或setTimeout()的情况下为在画布中移动的对象设置动画。
是。还有requestAnimationFrame,但并非在所有浏览器上都有。
此外,尝试将间隔设置为更小和更大的值,并查看是否使其更少跳跃。
此外,确保您的绘制循环中的内容很少。滞后可能是你自己的错。 Canvas对性能事物非常敏感,它可以帮助您保持快速运行。
答案 1 :(得分:0)
定义滞后,你的意思是有点跳跃吗?因为如果是这样你的设置间隔是错误的,我使用这两种方法动画了大量的画布,并且没有别的办法了。