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

Задача с цветами на чистом JavaScript
Суть задачи сводиться к тому, что вам необходимо создать свою собственную функцию на JS, которая будет принимать цвет в HEX формате (например, #fafafa), а также градус затемнения. В итоге она будет возвращать новый цвет, который темнее или же светлее на градус затемнения. 

Пример выполнения задачи

Вы можете выбрать цвет, а также ввести градус затемнения или же осветления. Если число положительное, то цвет будет светлее, если негативное, то цвет будет темнее.

Если поле с выбор цвета не отображается, значит браузер не поддерживает этот тег. Вам стоит зайти с другого бразуера, к примеру 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 

Что же здесь происходит?

Сначала мы создаем переменную num, в которою помещаем переданный цвет. При этом конвертируем его в число и удаляем первый символ решетку. В переменную amt помещаем процент, умноженный на 2.55. Это необходимо для добавления его к каждому из цветов RGB, что мы как раз и делаем в следующих строках. Далее мы все соединяем воедино и приводим все к строке. При этом, идут проверки на то, что цвет не может быть темнее черного или же светлее белого.
()
Количество показов: 217
25 июля 2017

Возврат к списку

Корзина0 позиций на сумму 0 руб.