add requestAnimFrame