Use requestAnimationFrame()