Skip to content
Permalink
Browse files

Effects: Fixed a bug when animating classes and nothing should happen…

…, e.g., calling .removeClass('foo') when the element doesn't have the class foo.
  • Loading branch information...
scottgonzalez committed Nov 6, 2009
1 parent ad2e514 commit b0733bbe59c17e49dcc8ee6dc98efe15c0c4ca8e
Showing with 6 additions and 13 deletions.
  1. +6 −13 ui/jquery.effects.core.js
@@ -103,22 +103,19 @@ $.effects = {
var that = $(this),
originalStyleAttr = that.attr('style') || ' ',
originalStyle = filterStyles(getElementStyles.call(this)),
newStyle;
newStyle,
className = that.attr('className');

$.each(classAnimationActions, function(action) {
$.each(classAnimationActions, function(i, action) {
if (value[action]) {
that[action + 'Class'](value[action]);
}
});
newStyle = filterStyles(getElementStyles.call(this));
$.each(classAnimationActions, function(action, reverse) {
if (value[action]) {
that[reverse + 'Class'](value[action]);
}
});
that.attr('className', className);

that.animate(styleDifference(originalStyle, newStyle), duration, easing, function() {
$.each(classAnimationActions, function(action) {
$.each(classAnimationActions, function(i, action) {
if (value[action]) { that[action + 'Class'](value[action]); }
});
// work around bug in IE by clearing the cssText before setting it
@@ -136,11 +133,7 @@ $.effects = {

// start class animations

var classAnimationActions = {
add: 'remove',
remove: 'add',
toggle: 'toggle'
};
var classAnimationActions = ['add', 'remove', 'toggle'];

function getElementStyles() {
var style = document.defaultView

0 comments on commit b0733bb

Please sign in to comment.
You can’t perform that action at this time.