首页 > 其他 > 详细

requestAnimationFrame 兼容处理

时间:2015-04-18 12:54:32      阅读:248      评论:0      收藏:0      [点我收藏+]
(function() {
    var lastTime = 0;
    var vendors = [ms, moz, webkit, o];
    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];
    }

    if (!window.requestAnimationFrame) window.requestAnimationFrame = function(callback, element) {
        var currTime = new Date().getTime();
        var timeToCall = Math.max(0, 16 - (currTime - lastTime));
        var id = window.setTimeout(function() {
            callback(currTime + timeToCall);
        },
        timeToCall);
        lastTime = currTime + timeToCall;
        return id;
    };

    if (!window.cancelAnimationFrame) window.cancelAnimationFrame = function(id) {
        clearTimeout(id);
    };
}());

 

requestAnimationFrame 兼容处理

原文:http://www.cnblogs.com/rubekid/p/4437151.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!