Path: blob/main/projects/doge2048/js/animframe_polyfill.js
4626 views
(function() {1var lastTime = 0;2var vendors = ['webkit', 'moz'];3for(var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) {4window.requestAnimationFrame = window[vendors[x]+'RequestAnimationFrame'];5window.cancelAnimationFrame =6window[vendors[x]+'CancelAnimationFrame'] || window[vendors[x]+'CancelRequestAnimationFrame'];7}89if (!window.requestAnimationFrame) {10window.requestAnimationFrame = function(callback, element) {11var currTime = new Date().getTime();12var timeToCall = Math.max(0, 16 - (currTime - lastTime));13var id = window.setTimeout(function() { callback(currTime + timeToCall); },14timeToCall);15lastTime = currTime + timeToCall;16return id;17};18}1920if (!window.cancelAnimationFrame) {21window.cancelAnimationFrame = function(id) {22clearTimeout(id);23};24}25}());262728