-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathsquare-rater.js
More file actions
38 lines (34 loc) · 1.25 KB
/
square-rater.js
File metadata and controls
38 lines (34 loc) · 1.25 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
document.addEventListener('DOMContentLoaded', function(){
var raters = document.getElementsByClassName('square-rater');
if (raters) {
for (var i = 0; i < raters.length; i++) {
renderSquareRater(raters[i]);
}
}
});
function renderSquareRater(rater) {
var _max = rater.getAttribute('data-max') ? rater.getAttribute('data-max') : 5;
var _value = rater.getAttribute('data-value') ? rater.getAttribute('data-value') : 0;
var _direction = rater.getAttribute('data-direction') ? rater.getAttribute('data-direction') : "ltr";
if (_direction == "rtl") {
for (var i = 0; i < _max; i++) {
var rate_node = document.createElement('div');
if (i < _value) {
rate_node.className='rate-node rated';
} else {
rate_node.className='rate-node';
}
rater.appendChild(rate_node);
}
} else {
for (var i = _max - 1; i >= 0; i--) {
var rate_node = document.createElement('div');
if (i < _value) {
rate_node.className='rate-node rated';
} else {
rate_node.className='rate-node';
}
rater.appendChild(rate_node);
}
}
}