1
0
mirror of https://github.com/danog/2048.git synced 2024-11-26 19:34:44 +01:00
2048/js/animframe_polyfill.js

29 lines
890 B
JavaScript
Raw Normal View History

(function () {
2014-03-11 14:48:42 +01:00
var lastTime = 0;
var vendors = ['webkit', 'moz'];
for (var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) {
window.requestAnimationFrame = window[vendors[x] + 'RequestAnimationFrame'];
window.cancelAnimationFrame = window[vendors[x] + 'CancelAnimationFrame'] ||
window[vendors[x] + 'CancelRequestAnimationFrame'];
2014-03-11 14:48:42 +01:00
}
if (!window.requestAnimationFrame) {
window.requestAnimationFrame = function (callback) {
2014-03-11 14:48:42 +01:00
var currTime = new Date().getTime();
var timeToCall = Math.max(0, 16 - (currTime - lastTime));
var id = window.setTimeout(function () {
callback(currTime + timeToCall);
},
2014-03-11 14:48:42 +01:00
timeToCall);
lastTime = currTime + timeToCall;
return id;
};
}
if (!window.cancelAnimationFrame) {
window.cancelAnimationFrame = function (id) {
2014-03-11 14:48:42 +01:00
clearTimeout(id);
};
}
}());