mirror of
https://github.com/Hopiu/angular.js.git
synced 2026-03-17 07:40:22 +00:00
fix(jqLite): attr() should not special-case 'class' attribute
since jQuery 1.6 'class' is not treated specially, so we have to revert this fix and use className in tests instead
This commit is contained in:
parent
a2a830e227
commit
0d7fe97aff
3 changed files with 6 additions and 21 deletions
|
|
@ -253,13 +253,7 @@ forEach({
|
|||
},
|
||||
|
||||
attr: function(element, name, value){
|
||||
if (name === 'class') {
|
||||
if(isDefined(value)) {
|
||||
element.className = value;
|
||||
} else {
|
||||
return element.className;
|
||||
}
|
||||
} else if (SPECIAL_ATTR[name]) {
|
||||
if (SPECIAL_ATTR[name]) {
|
||||
if (isDefined(value)) {
|
||||
element[name] = !!value;
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -254,7 +254,7 @@ describe("directive", function() {
|
|||
scope.$digest();
|
||||
scope.dynCls = 'foo';
|
||||
scope.$digest();
|
||||
expect(element.attr('class')).toBe('ui-panel ui-selected ng-directive foo');
|
||||
expect(element[0].className).toBe('ui-panel ui-selected ng-directive foo');
|
||||
});
|
||||
|
||||
|
||||
|
|
@ -262,7 +262,7 @@ describe("directive", function() {
|
|||
var scope = compile('<div class="panel bar" ng:class="dynCls"></div>');
|
||||
scope.dynCls = 'panel';
|
||||
scope.$digest();
|
||||
expect(element.attr('class')).toBe('panel bar ng-directive');
|
||||
expect(element[0].className).toBe('panel bar ng-directive');
|
||||
});
|
||||
|
||||
|
||||
|
|
@ -272,7 +272,7 @@ describe("directive", function() {
|
|||
scope.$digest();
|
||||
scope.dynCls = 'window';
|
||||
scope.$digest();
|
||||
expect(element.attr('class')).toBe('bar ng-directive window');
|
||||
expect(element[0].className).toBe('bar ng-directive window');
|
||||
});
|
||||
|
||||
|
||||
|
|
@ -283,7 +283,7 @@ describe("directive", function() {
|
|||
element.addClass('foo');
|
||||
scope.dynCls = '';
|
||||
scope.$digest();
|
||||
expect(element.attr('class')).toBe('ng-directive');
|
||||
expect(element[0].className).toBe('ng-directive');
|
||||
});
|
||||
|
||||
|
||||
|
|
@ -291,7 +291,7 @@ describe("directive", function() {
|
|||
var scope = compile('<div ng:class="dynCls"></div>');
|
||||
scope.dynCls = [undefined, null];
|
||||
scope.$digest();
|
||||
expect(element.attr('class')).toBe('ng-directive');
|
||||
expect(element[0].className).toBe('ng-directive');
|
||||
});
|
||||
});
|
||||
|
||||
|
|
|
|||
|
|
@ -168,15 +168,6 @@ describe('jqLite', function(){
|
|||
var elm = jqLite('<div class="any">a</div>');
|
||||
expect(elm.attr('non-existing')).toBeUndefined();
|
||||
});
|
||||
|
||||
it('should special-case "class" attribute', function() {
|
||||
// stupid IE9 returns null for element.getAttribute('class') when element has ng:class attr
|
||||
var elm = jqLite('<div class=" any " ng:class="dynCls">a</div>');
|
||||
expect(elm.attr('class')).toBe(' any ');
|
||||
|
||||
elm.attr('class', 'foo bar');
|
||||
expect(elm.attr('class')).toBe('foo bar');
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue