有很多地方(例如如何使用requestAnimationFrame?)修复window.requestAnimationFrame
如下。我不明白为什么赋值的右侧被包装到函数调用中。
window.requestAnimFrame = (function(){
return window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.oRequestAnimationFrame ||
window.msRequestAnimationFrame ||
function(callback){
window.setTimeout(callback, 1000 / 60);
};
})();
我以前也想知道同样的事情。我很确定谷歌真的很喜欢闭包。即使其中没有一个变量,这是一件“安全”的事情。
据我所知,这是完全相同的事情,没有任何干扰命名空间的变化(使用这样的闭包的一般原因):
window.requestAnimFrame =
window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.oRequestAnimationFrame ||
window.msRequestAnimationFrame ||
function(callback){
window.setTimeout(callback, 1000 / 60);
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)