fix(jqLite): properly toggle multiple classes

Fixes #4467
Closes #6448
This commit is contained in:
Pawel Kozlowski
2014-02-25 19:55:34 +01:00
parent 27873acbf0
commit 4e73c80b17
2 changed files with 59 additions and 3 deletions

View File

@@ -840,10 +840,15 @@ forEach({
removeClass: jqLiteRemoveClass,
toggleClass: function(element, selector, condition) {
if (isUndefined(condition)) {
condition = !jqLiteHasClass(element, selector);
if (selector) {
forEach(selector.split(' '), function(className){
var classCondition = condition;
if (isUndefined(classCondition)) {
classCondition = !jqLiteHasClass(element, className);
}
(classCondition ? jqLiteAddClass : jqLiteRemoveClass)(element, className);
});
}
(condition ? jqLiteAddClass : jqLiteRemoveClass)(element, selector);
},
parent: function(element) {