setTimeout use  instead requestAnimationFrame