Commit f7ccec1b authored by louisremi's avatar louisremi Committed by timmywil

use requestAnimationFrame instead of setInterval for animations, when available.

parent 2ed81b44
...@@ -363,7 +363,9 @@ jQuery.fx.prototype = { ...@@ -363,7 +363,9 @@ jQuery.fx.prototype = {
t.elem = this.elem; t.elem = this.elem;
if ( t() && jQuery.timers.push(t) && !timerId ) { if ( t() && jQuery.timers.push(t) && !timerId ) {
timerId = setInterval(fx.tick, fx.interval); jQuery.support.requestAnimationFrame ?
window[jQuery.support.requestAnimationFrame](fx.tick):
timerId = setInterval(fx.tick, fx.interval);
} }
}, },
...@@ -468,6 +470,8 @@ jQuery.extend( jQuery.fx, { ...@@ -468,6 +470,8 @@ jQuery.extend( jQuery.fx, {
if ( !timers.length ) { if ( !timers.length ) {
jQuery.fx.stop(); jQuery.fx.stop();
} else if ( jQuery.support.requestAnimationFrame ) {
window[jQuery.support.requestAnimationFrame](this);
} }
}, },
......
...@@ -58,6 +58,14 @@ ...@@ -58,6 +58,14 @@
// (WebKit defaults to false instead of true, IE too, if it's in an optgroup) // (WebKit defaults to false instead of true, IE too, if it's in an optgroup)
optSelected: opt.selected, optSelected: opt.selected,
// Verify requestAnimationFrame mechanism existence
// use the prefixed name as the value
requestAnimationFrame: mozRequestAnimationFrame ?
'mozRequestAnimationFrame' :
webkitRequestAnimationFrame ?
'webkitRequestAnimationFrame' :
false,
// Will be defined later // Will be defined later
deleteExpando: true, deleteExpando: true,
optDisabled: false, optDisabled: false,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment