From 12d13d9adaea1139b0928180c17aa83eef5d5c6a Mon Sep 17 00:00:00 2001
From: Paul Bakaus <paul.bakaus@googlemail.com>
Date: Fri, 8 Dec 2006 09:26:50 +0000
Subject: [PATCH] finally added the toggle option for animate(). It's not
 beautiful right now, but it works for the time.

---
 src/fx/fx.js |   24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/src/fx/fx.js b/src/fx/fx.js
index 7c2218e..789220f 100644
--- a/src/fx/fx.js
+++ b/src/fx/fx.js
@@ -484,6 +484,30 @@ jQuery.extend({
 			// Begin the animation
 			z.custom(z.el.orig[prop], 0);
 		};
+		
+		//Simple 'toggle' function
+		z.toggle = function() {
+			if ( !z.el.orig ) z.el.orig = {};
+
+			// Remember where we started, so that we can go back to it later
+			z.el.orig[prop] = this.cur();
+
+			if(oldDisplay == 'none')  {
+				z.o.show = true;
+				
+				// Stupid IE, look what you made me do
+				if ( prop != "opacity" )
+					y[prop] = "1px";
+
+				// Begin the animation
+				z.custom(0, z.el.orig[prop]);	
+			} else {
+				z.o.hide = true;
+
+				// Begin the animation
+				z.custom(z.el.orig[prop], 0);
+			}		
+		};
 
 		// Each step of an animation
 		z.step = function(firstNum, lastNum){
-- 
1.7.10.4