window.requestAnimationFrame = window ._requestAnimationFrame || window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame window.oRequestAnimationFrame window.msRequestAnimationFrame (function () { return function (callback, element) { var lastTime = element._lastTime; if (lastTime === undefined) { lastTime = 0; } var currTime = Date.now(); var timeToCall = Math.max(1, 33 - (currTime-lastTime)); window.setTimeout(callback, timeToCall); element ._ lastTime = currTime + timeToCall; }; } )();