diff --git a/src/effects.js b/src/effects.js
index 7d2cd8f9..d7896c0e 100644
--- a/src/effects.js
+++ b/src/effects.js
@@ -252,7 +252,8 @@ jQuery.each({
slideUp: genFx("hide", 1),
slideToggle: genFx("toggle", 1),
fadeIn: { opacity: "show" },
- fadeOut: { opacity: "hide" }
+ fadeOut: { opacity: "hide" },
+ fadeToggle: { opacity: "toggle" }
}, function( name, props ) {
jQuery.fn[ name ] = function( speed, easing, callback ) {
return this.animate( props, speed, easing, callback );
diff --git a/test/index.html b/test/index.html
index 03e1d975..e6687272 100644
--- a/test/index.html
+++ b/test/index.html
@@ -259,6 +259,9 @@ Z
slideToggleIn
slideToggleIn
slideToggleOut
slideToggleOut
+
+
+ fadeToggleOut
fadeToggleOut
diff --git a/test/unit/effects.js b/test/unit/effects.js
index 6baa0f62..952afc5b 100644
--- a/test/unit/effects.js
+++ b/test/unit/effects.js
@@ -729,6 +729,13 @@ test("Chain slideToggle out", function() {
jQuery('#slidetoggleout div').saveState(jQuery.support.shrinkWrapBlocks).slideToggle('fast').slideToggle('fast',jQuery.checkState);
});
+test("Chain fadeToggle in", function() {
+ jQuery('#fadetogglein div').saveState().fadeToggle('fast').fadeToggle('fast',jQuery.checkState);
+});
+test("Chain fadeToggle out", function() {
+ jQuery('#fadetoggleout div').saveState().fadeToggle('fast').fadeToggle('fast',jQuery.checkState);
+});
+
test("Chain fadeTo 0.5 1.0 with easing and callback)", function() {
jQuery('#fadeto div').saveState().fadeTo('fast',0.5).fadeTo('fast',1.0,'linear',jQuery.checkState);
});