toggle: function( fn, fn2 ){
return jQuery.isFunction(fn) && jQuery.isFunction(fn2) ?
this._toggle( fn, fn2 ) :
- this.animate({
- height: "toggle", width: "toggle", opacity: "toggle"
- }, fn, fn2);
+ fn ?
+ this.animate({
+ height: "toggle", width: "toggle", opacity: "toggle"
+ }, fn, fn2) :
+ this.each(function(){
+ jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ]();
+ });
},
/**
*/
animate: function( prop, speed, easing, callback ) {
return this.queue(function(){
- var hidden = jQuery(this).is(":hidden");
+ var hidden = jQuery(this).is(":hidden"),
+ opt = jQuery.speed(speed, easing, callback),
+ self = this;
for ( var p in prop )
- if ( prop[p] == "hide" && hidden ||
- prop[p] == "show" && !hidden )
- return;
+ if ( prop[p] == "hide" && hidden || prop[p] == "show" && !hidden )
+ return jQuery.isFunction(opt.complete) && opt.complete.apply(this);
this.curAnim = jQuery.extend({}, prop);
- var opt = jQuery.speed(speed, easing, callback);
- var self = this;
jQuery.each( prop, function(name, val){
var e = new jQuery.fx( self, opt, name );