Skip to content
This repository was archived by the owner on May 29, 2019. It is now read-only.

Commit 4369800

Browse files
committed
fix(rating): fix usage of aria-valuetext
- Fix usage to be on top level element Closes #5573 Fixes #5571
1 parent 09b2150 commit 4369800

File tree

3 files changed

+6
-3
lines changed

3 files changed

+6
-3
lines changed

Diff for: src/rating/rating.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ angular.module('ui.bootstrap.rating', [])
88
})
99

1010
.controller('UibRatingController', ['$scope', '$attrs', 'uibRatingConfig', function($scope, $attrs, ratingConfig) {
11-
var ngModelCtrl = { $setViewValue: angular.noop };
11+
var ngModelCtrl = { $setViewValue: angular.noop },
12+
self = this;
1213

1314
this.init = function(ngModelCtrl_) {
1415
ngModelCtrl = ngModelCtrl_;
@@ -78,6 +79,7 @@ angular.module('ui.bootstrap.rating', [])
7879

7980
this.render = function() {
8081
$scope.value = ngModelCtrl.$viewValue;
82+
$scope.title = self.getTitle($scope.value - 1);
8183
};
8284
}])
8385

Diff for: src/rating/test/rating.spec.js

+1
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@ describe('rating directive', function() {
107107

108108
expect(getState()).toEqual([true, true, false, false, false]);
109109
expect(element.attr('aria-valuenow')).toBe('2');
110+
expect(element.attr('aria-valuetext')).toBe('two');
110111
});
111112

112113
it('shows different number of icons when `max` attribute is set', function() {

Diff for: template/rating/rating.html

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<span ng-mouseleave="reset()" ng-keydown="onKeydown($event)" tabindex="0" role="slider" aria-valuemin="0" aria-valuemax="{{range.length}}" aria-valuenow="{{value}}">
1+
<span ng-mouseleave="reset()" ng-keydown="onKeydown($event)" tabindex="0" role="slider" aria-valuemin="0" aria-valuemax="{{range.length}}" aria-valuenow="{{value}}" aria-valuetext="{{title}}">
22
<span ng-repeat-start="r in range track by $index" class="sr-only">({{ $index < value ? '*' : ' ' }})</span>
3-
<i ng-repeat-end ng-mouseenter="enter($index + 1)" ng-click="rate($index + 1)" class="glyphicon" ng-class="$index < value && (r.stateOn || 'glyphicon-star') || (r.stateOff || 'glyphicon-star-empty')" ng-attr-title="{{r.title}}" aria-valuetext="{{r.title}}"></i>
3+
<i ng-repeat-end ng-mouseenter="enter($index + 1)" ng-click="rate($index + 1)" class="glyphicon" ng-class="$index < value && (r.stateOn || 'glyphicon-star') || (r.stateOff || 'glyphicon-star-empty')" ng-attr-title="{{r.title}}"></i>
44
</span>

0 commit comments

Comments
 (0)