X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Ffx.js;h=794b96fc786018283fcbfd00442703764ea21b32;hb=4ca4ce52f76f4db64f9a8350aa60ab54eba15697;hp=626119bc95b8706e773d8c1d576b83cf31e61b34;hpb=5c1725d689c1b5b9a8d3c35aa85c42e71016855b;p=jquery.git diff --git a/src/fx.js b/src/fx.js index 626119b..794b96f 100644 --- a/src/fx.js +++ b/src/fx.js @@ -18,7 +18,7 @@ jQuery.fn.extend({ if ( elemdisplay[ tagName ] ) { display = elemdisplay[ tagName ]; } else { - var elem = jQuery("<" + this[i].tagName + " />").appendTo("body"); + var elem = jQuery("<" + tagName + " />").appendTo("body"); display = elem.css("display"); if ( display === "none" ) @@ -26,7 +26,7 @@ jQuery.fn.extend({ elem.remove(); - elemdisplay[ this[i].tagName ] = display; + elemdisplay[ tagName ] = display; } this[i].style.display = jQuery.data(this[i], "olddisplay", display); @@ -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){