reduce impact of requestAnimationFrame on incompatible browsers by minimizing number of lookups

This commit is contained in:
louisremi 2011-02-02 10:26:04 +01:00 committed by timmywil
parent 03e6f7235b
commit 15e34d1f07

16
src/effects.js vendored
View file

@ -363,9 +363,17 @@ jQuery.fx.prototype = {
t.elem = this.elem;
if ( t() && jQuery.timers.push(t) && !timerId ) {
timerId = jQuery.support.requestAnimationFrame ?
!window[jQuery.support.requestAnimationFrame](fx.tick):
setInterval(fx.tick, fx.interval);
if ( jQuery.support.requestAnimationFrame ) {
timerId = true;
(function raf() {
if (timerId) {
window[jQuery.support.requestAnimationFrame](raf);
}
fx.tick();
})();
} else {
timerId = setInterval(fx.tick, fx.interval);
}
}
},
@ -470,8 +478,6 @@ jQuery.extend( jQuery.fx, {
if ( !timers.length ) {
jQuery.fx.stop();
} else if ( jQuery.support.requestAnimationFrame && timerId) {
window[jQuery.support.requestAnimationFrame](jQuery.fx.tick);
}
},