it Задачи
Задача с цветами на чистом JavaScript

Задача с цветами на чистом JavaScript
Отличная задача, которая проверить ваши знания в программировании на JS. Также подобная функция может пригодиться вам при создании ваших веб проектов.
Суть задачи сводиться к тому, что вам необходимо создать свою собственную функцию на JS, которая будет принимать цвет в HEX формате (например, #fafafa), а также градус затемнения. В итоге она будет возвращать новый цвет, который темнее или же светлее на градус затемнения.
Затемнить
Пример выполнения задачи
Вы можете выбрать цвет, а также ввести градус затемнения или же осветления. Если число положительное,
то цвет будет светлее, если негативное, то цвет будет темнее.
Если поле с выбор цвета не отображается, значит браузер не поддерживает этот тег. Вам стоит зайти с другого бразуера, к примеру Google Chrome.
Градус задается в диапазоне от -100 и до 100.
Если поле с выбор цвета не отображается, значит браузер не поддерживает этот тег. Вам стоит зайти с другого бразуера, к примеру Google Chrome.
Градус задается в диапазоне от -100 и до 100.
Затемнить
Пример затемнения заднего фона
Решение задания
Задача безусловно сложная и её выполнение совсем не простое. Мы приведем лишь код функций, которую можно вызывать, передавая два параметра и получать нужный результат. Итак, вот она:
function shaderColor (color, percent) {
var num = parseInt (color.slice (1), 16);
var amt = Math.round(2.55 * percent);
var R = (num >> 16) + amt;
var G = (num >> 8 & 0x00FF) + amt;
var B = (num & 0x0000FF) + amt;
var new_color = ("#" + (0x1000000 +
(R < 255 ? R < 1 ? 0 : R : 255) * 0x10000 +
(G < 255 ? G < 1 ? 0 : G : 255) * 0x100 +
(B < 255 ? B < 1 ? 0 : B : 255)).toString (16).slice (1))
return new_color;
}
Что же здесь происходит?
Сначала мы создаем переменную RGB , что мы как раз и делаем в следующих строках. Далее мы все соединяем воедино и приводим все к строке. При этом, идут проверки на то, что цвет не может быть темнее черного или же светлее белого.
num
, в которою помещаем переданный цвет. При этом конвертируем его в число и удаляем первый символ решетку. В переменную amt
помещаем процент, умноженный на 2.55. Это необходимо для добавления его к каждому из цветов Больше интересных новостей




Комментарии