Javascript 动画中的初始延迟
。我每>10毫秒移动一次球。问题是,当我加载动画时,有一个初始延迟。不过,在我的代码开始时,我没有做任何重复/密集的事情。即使我将球数减少到5个球,问题仍然存在。我使用的重复方法会有缺陷吗Javascript 动画中的初始延迟,javascript,html,Javascript,Html,。我每>10毫秒移动一次球。问题是,当我加载动画时,有一个初始延迟。不过,在我的代码开始时,我没有做任何重复/密集的事情。即使我将球数减少到5个球,问题仍然存在。我使用的重复方法会有缺陷吗 function moveBalls() { for(j = 0; j < ball_count; j++) { balls[j].move(); } setTimeout(moveBalls, 10); } 函数moveBalls(){ 对于(j=0;j
function moveBalls() {
for(j = 0; j < ball_count; j++) {
balls[j].move();
}
setTimeout(moveBalls, 10);
}
函数moveBalls(){
对于(j=0;j
这是主回路。也许这就是罪魁祸首。是否有更可靠的方法以间隔运行该函数?非常感谢您的帮助。是的,有一种更好的方式来运行该功能-这就是许多HTML5游戏所使用的:
Window.requestAnimationFrame()
这会告诉浏览器您正在制作动画,并希望尽快再次运行该函数。它将在下次绘制屏幕时运行它
这样做速度更快,总体上提高了帧速率和性能(因为setTimeout
不是很准确)
文章(MDN)。是的,有一种更好的方式来运行该功能-这就是许多HTML5游戏所使用的:
Window.requestAnimationFrame()
这会告诉浏览器您正在制作动画,并希望尽快再次运行该函数。它将在下次绘制屏幕时运行它
这样做速度更快,总体上提高了帧速率和性能(因为setTimeout
不是很准确)
第条(MDN)