diff options
| author | Di Peng | 2011-08-09 18:24:56 -0700 |
|---|---|---|
| committer | Igor Minar | 2011-08-19 00:14:05 -0700 |
| commit | 6fb4bf4c543b3e48375221a9c5f1791af31a3ffc (patch) | |
| tree | 4f1481287156ceb45972ed216b4d1fe29cf05cbd /src | |
| parent | cc604b6e26e22c04ef64f077fd3177bbf60533f2 (diff) | |
| download | angular.js-6fb4bf4c543b3e48375221a9c5f1791af31a3ffc.tar.bz2 | |
fix(directives): make ng:class-even/odd work with ng:class
Closes #508
Diffstat (limited to 'src')
| -rw-r--r-- | src/directives.js | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/directives.js b/src/directives.js index 9aa0d57e..64a06359 100644 --- a/src/directives.js +++ b/src/directives.js @@ -571,9 +571,14 @@ function ngClass(selector) { var existing = element[0].className + ' '; return function(element){ this.$onEval(function(){ - if (selector(this.$index)) { - var value = this.$eval(expression); + var scope = this; + + if (selector(scope.$index)) { + var ngClassVal = scope.$eval(element.attr('ng:class') || ''); + if (isArray(ngClassVal)) ngClassVal = ngClassVal.join(' '); + var value = scope.$eval(expression); if (isArray(value)) value = value.join(' '); + if (ngClassVal && ngClassVal !== value) value = value + ' ' + ngClassVal; element[0].className = trim(existing + value); } }, element); |
