jquery data: Closes #3539. Exposed jQuery.queue. Moved all the data and queue functions to their own module. Made the dequeue function more generic(designed to be used on functions). Closes #3748. Reverted a previous modification.
This commit is contained in:
parent
1b0276dc57
commit
4afa608351
7 changed files with 164 additions and 255 deletions
48
src/fx.js
48
src/fx.js
|
@ -137,27 +137,6 @@ jQuery.fn.extend({
|
|||
});
|
||||
},
|
||||
|
||||
queue: function(type, fn){
|
||||
if ( jQuery.isFunction(type) || jQuery.isArray(type) ) {
|
||||
fn = type;
|
||||
type = "fx";
|
||||
}
|
||||
|
||||
if ( !type || (typeof type === "string" && !fn) )
|
||||
return queue( this[0], type );
|
||||
|
||||
return this.each(function(){
|
||||
if ( jQuery.isArray(fn) )
|
||||
queue(this, type, fn);
|
||||
else {
|
||||
queue(this, type).push( fn );
|
||||
|
||||
if ( queue(this, type).length == 1 )
|
||||
fn.call(this);
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
stop: function(clearQueue, gotoEnd){
|
||||
var timers = jQuery.timers;
|
||||
|
||||
|
@ -197,33 +176,6 @@ jQuery.each({
|
|||
};
|
||||
});
|
||||
|
||||
var queue = function( elem, type, array ) {
|
||||
if ( elem ){
|
||||
|
||||
type = type || "fx";
|
||||
|
||||
var q = jQuery.data( elem, type + "queue" );
|
||||
|
||||
if ( !q || array )
|
||||
q = jQuery.data( elem, type + "queue", jQuery.makeArray(array) );
|
||||
|
||||
}
|
||||
return q;
|
||||
};
|
||||
|
||||
jQuery.fn.dequeue = function(type){
|
||||
type = type || "fx";
|
||||
|
||||
return this.each(function(){
|
||||
var q = queue(this, type);
|
||||
|
||||
q.shift();
|
||||
|
||||
if ( q.length )
|
||||
q[0].call( this );
|
||||
});
|
||||
};
|
||||
|
||||
jQuery.extend({
|
||||
|
||||
speed: function(speed, easing, fn) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue