diff options
author | Ariel Flesler <aflesler@gmail.com> | 2008-12-25 20:13:42 +0000 |
---|---|---|
committer | Ariel Flesler <aflesler@gmail.com> | 2008-12-25 20:13:42 +0000 |
commit | 654d946ead6bc1f995c04af2abc02da30cfe4f74 (patch) | |
tree | 531ee9db4ea6154553b4dbf8197412d8c84cc72d /src/fx.js | |
parent | 0a8f96ac3d37f637ab433c037d4f807e8ef94bbe (diff) | |
download | jquery-654d946ead6bc1f995c04af2abc02da30cfe4f74.tar.gz jquery-654d946ead6bc1f995c04af2abc02da30cfe4f74.zip |
jquery fx: Closes #3219. jQuery.fn.toggle can accept a boolean argument indicating show/hide.
Diffstat (limited to 'src/fx.js')
-rw-r--r-- | src/fx.js | 13 |
1 files changed, 8 insertions, 5 deletions
@@ -57,15 +57,18 @@ jQuery.fn.extend({ _toggle: jQuery.fn.toggle, toggle: function( fn, fn2 ){ + var bool = typeof fn === "boolean"; + return jQuery.isFunction(fn) && jQuery.isFunction(fn2) ? this._toggle.apply( this, arguments ) : - fn ? + fn == null || bool ? + this.each(function(){ + var state = bool ? fn : jQuery(this).is(":hidden"); + jQuery(this)[ state ? "show" : "hide" ](); + }) : this.animate({ height: "toggle", width: "toggle", opacity: "toggle" - }, fn, fn2) : - this.each(function(){ - jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ](); - }); + }, fn, fn2); }, fadeTo: function(speed,to,callback){ |