diff options
| author | Igor Minar | 2011-09-01 15:13:42 -0700 | 
|---|---|---|
| committer | Igor Minar | 2011-09-01 16:37:07 -0700 | 
| commit | 622c3ec97409c67ff316c317771b47880fa5c1e8 (patch) | |
| tree | 1896ec6c159acd557ad7de1c480b56cf00d54bfc | |
| parent | db78aa1ce1c6e6a3f1ab0b569c78f160da239d4c (diff) | |
| download | angular.js-622c3ec97409c67ff316c317771b47880fa5c1e8.tar.bz2 | |
fix(jqLite): addClass should ignore falsy values
| -rw-r--r-- | src/jqLite.js | 4 | ||||
| -rw-r--r-- | test/jqLiteSpec.js | 14 | 
2 files changed, 16 insertions, 2 deletions
diff --git a/src/jqLite.js b/src/jqLite.js index ce9e612e..8cef64da 100644 --- a/src/jqLite.js +++ b/src/jqLite.js @@ -162,8 +162,8 @@ function JQLiteRemoveClass(element, selector) {    );  } -function JQLiteAddClass(element, selector ) { -  if (!JQLiteHasClass(element, selector)) { +function JQLiteAddClass(element, selector) { +  if (selector && !JQLiteHasClass(element, selector)) {      element.className = trim(element.className + ' ' + selector);    }  } diff --git a/test/jqLiteSpec.js b/test/jqLiteSpec.js index 5991c4f8..f2a99943 100644 --- a/test/jqLiteSpec.js +++ b/test/jqLiteSpec.js @@ -197,6 +197,20 @@ describe('jqLite', function(){          expect(jqLite(a).hasClass('abc')).toEqual(true);          expect(jqLite(b).hasClass('abc')).toEqual(true);        }); + +      it('should ignore falsy values', function() { +        var jqA = jqLite(a); +        expect(jqA[0].className).toBe(''); + +        jqA.addClass(undefined); +        expect(jqA[0].className).toBe(''); + +        jqA.addClass(null); +        expect(jqA[0].className).toBe(''); + +        jqA.addClass(false); +        expect(jqA[0].className).toBe(''); +      });      });  | 
