Дайте золотой информации. Те крохи, что даны… черт знает как ими воспользоваться. Тупо заучил синтаксис. Вроде и понимаю, что делает функция, но воспользоваться этим - без понятия.
Дальше проставления цифирок не прошел
var element = document.querySelectorAll('.chips li');
for (var i = 0; i < element.length; i++) {
element[i].innerHTML = element[i].dataset.number;
}
function setNumber(element) {
element.classList.add('color-' + element.dataset.number);
}
function reColor(element) {
var baseColor = getComputedStyle(element).borderTopColor;
var color = baseColor.match(/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);
element.style.borderTopColor = colorShift(color, 40);
element.style.borderRightColor = colorShift(color, 60);
element.style.borderBottomColor = colorShift(color, 80);
element.style.borderLeftColor = colorShift(color, 20);
}
function colorShift(color, shift) {
var rgb = '#';
for (var i = 1; i <= 3; i++) {
var part = parseInt(color[i]) - shift;
part = Math.round(Math.min(Math.max(0, part), 255));
part = part.toString(16);
rgb += ('00' + part).substr(part.length);
}
return rgb;
}
А все гуд. Справился
var element = document.querySelectorAll('.chips li');
function setNumber(element) {
element.classList.add('color-' + element.dataset.number);
}
function reColor(element) {
var baseColor = getComputedStyle(element).borderTopColor;
var color = baseColor.match(/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);
element.style.borderTopColor = colorShift(color, 40);
element.style.borderRightColor = colorShift(color, 60);
element.style.borderBottomColor = colorShift(color, 80);
element.style.borderLeftColor = colorShift(color, 20);
}
function colorShift(color, shift) {
var rgb = '#';
for (var i = 1; i <= 3; i++) {
var part = parseInt(color[i]) - shift;
part = Math.round(Math.min(Math.max(0, part), 255));
part = part.toString(16);
rgb += ('00' + part).substr(part.length);
}
return rgb;
}
for (var i = 0; i < element.length; i++) {
element[i].innerHTML = element[i].dataset.number;}
for (var i = 0; i < element.length; i++) {
setNumber(element[i]);
}
for (var i = 0; i < element.length; i++) {
reColor(element[i]);
}
Повторять не надо, все вписывается вполне в одну функцию друг за другом
3 лайка
Спасибо. На радостях перестарался)
Алексей, Вы давно версткой занялись?
Да нет, не больше чем другие жители форума, такой же студент еще.
Вот самое простое решение
var fishki = document.querySelectorAll(’.chips li’);
for (var i=0; i<fishki.length; i++){
fishki[i].innerHTML = fishki[i].dataset.number;
setNumber(fishki[i]);
reColor(fishki[i]);
}