use requestAnimationFrame instead of setInterval for animations, when available.
This commit is contained in:
parent
2ed81b44be
commit
f7ccec1b70
6
src/effects.js
vendored
6
src/effects.js
vendored
|
@ -363,7 +363,9 @@ jQuery.fx.prototype = {
|
|||
t.elem = this.elem;
|
||||
|
||||
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, {
|
|||
|
||||
if ( !timers.length ) {
|
||||
jQuery.fx.stop();
|
||||
} else if ( jQuery.support.requestAnimationFrame ) {
|
||||
window[jQuery.support.requestAnimationFrame](this);
|
||||
}
|
||||
},
|
||||
|
||||
|
|
|
@ -58,6 +58,14 @@
|
|||
// (WebKit defaults to false instead of true, IE too, if it's in an optgroup)
|
||||
optSelected: opt.selected,
|
||||
|
||||
// Verify requestAnimationFrame mechanism existence
|
||||
// use the prefixed name as the value
|
||||
requestAnimationFrame: mozRequestAnimationFrame ?
|
||||
'mozRequestAnimationFrame' :
|
||||
webkitRequestAnimationFrame ?
|
||||
'webkitRequestAnimationFrame' :
|
||||
false,
|
||||
|
||||
// Will be defined later
|
||||
deleteExpando: true,
|
||||
optDisabled: false,
|
||||
|
|
Loading…
Reference in a new issue