我刚刚浏览 vivus.js 的源代码,发现了以下代码行:
requestAnimFrame = (function () {
return (
window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.oRequestAnimationFrame ||
window.msRequestAnimationFrame ||
function(/* function */ callback){
return window.setTimeout(callback, 1000 / 60);
}
);
})();
Run Code Online (Sandbox Code Playgroud)
现在 ofcource 我运行最新版本的 chrome,第一个条件是 true,并且是实际返回的内容,但我真正关心的是最后一个条件 IE
function(/* function */ callback){
return window.setTimeout(callback, 1000 / 60);
}
Run Code Online (Sandbox Code Playgroud)
为什么1000 / 60?我明白为什么使用 setTimeout,但是 1000/60 到底有什么作用?有人能解释一下这部分吗?
PS我知道这是一个数学问题,但由于它涉及大量代码,所以我不得不发布。
谢谢。