From 2ca4d17982bfedc723f499b41e0936ada9eaa852 Mon Sep 17 00:00:00 2001 From: David Petersen Date: Sat, 26 Jan 2013 11:59:08 -0600 Subject: [PATCH] Effects Core: make removeClass work correctly with changes jQuery 1.9.0. Fixed #9015 - Inclusion of jQuery UI breaks removeClass --- tests/unit/effects/effects_core.js | 11 +++++++++++ ui/jquery.ui.effect.js | 4 ++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/tests/unit/effects/effects_core.js b/tests/unit/effects/effects_core.js index 26390b7d3..c9b1e1b4a 100644 --- a/tests/unit/effects/effects_core.js +++ b/tests/unit/effects/effects_core.js @@ -38,6 +38,17 @@ asyncTest( "Parse of null for options", function() { }); }); +test( "removeClass", function() { + expect( 3 ); + + var element = $( "
" ); + equal( "", element[ 0 ].className ); + element.addClass( "destroyed" ); + equal( "destroyed", element[ 0 ].className ); + element.removeClass(); + equal( "", element[ 0 ].className ); +}); + /* TODO: Disabled - Can't figure out why this is failing in IE 6/7 test( "createWrapper and removeWrapper retain focused elements (#7595)", function() { diff --git a/ui/jquery.ui.effect.js b/ui/jquery.ui.effect.js index c6623a0a1..97f006ee0 100644 --- a/ui/jquery.ui.effect.js +++ b/ui/jquery.ui.effect.js @@ -849,10 +849,10 @@ $.fn.extend({ _removeClass: $.fn.removeClass, removeClass: function( classNames, speed, easing, callback ) { - return speed ? + return arguments.length > 1 ? $.effects.animateClass.call( this, { remove: classNames }, speed, easing, callback ) : - this._removeClass( classNames ); + this._removeClass.apply( this, arguments ); }, _toggleClass: $.fn.toggleClass, -- 2.39.5