Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.05.2019, 23:07
Новичок на форуме
Отправить личное сообщение для Antoxa Goaller Посмотреть профиль Найти все сообщения от Antoxa Goaller
 
Регистрация: 10.06.2018
Сообщений: 9

Плавный градиент от цвета к цвету
Привет! Нужна помощь по доработке кода js. Сам не справлюсь...
Снизу написан код. Он позволяет вывести средний цвет между двумя имеющимися color1 и color2.В конце скрипта вводится значение color1 и color2, а также percent, которое определяет, на сколько будет близок средний цвет к color1 или color2. Сейчас percent - это число от 1 до 100.

Задача: Сделать автоматическую и последовательную подстановку значений в percent, от 1 до 100 и обратно, чтобы получился плавный градиент от color1 к color2.
<div id="content" style="width:200px; height:100px; border-radius:10px;">
Thank you friend!
</div>

<script>
function makeGradientColor(color1, color2, percent) {
  var newColor = {};

  function makeChannel(a, b) {
      return(a + Math.round((b-a)*(percent/100)));
  }

  function makeColorPiece(num) {
      num = Math.min(num, 255);   // not more than 255
      num = Math.max(num, 0);     // not less than 0
      var str = num.toString(16);
      if (str.length < 2) {
          str = "0" + str;
      }
      return(str);
  }

  newColor.r = makeChannel(color1.r, color2.r);
  newColor.g = makeChannel(color1.g, color2.g);
  newColor.b = makeChannel(color1.b, color2.b);
  newColor.cssColor = "#" + makeColorPiece(newColor.r) + makeColorPiece(newColor.g) + makeColorPiece(newColor.b);
  return(newColor);
}

var yellow = {r:255, g:255, b:0};
var blue = {r:0, g:0, b:255};
var newColor = makeGradientColor(yellow, blue, 12);
document.getElementById('content').style.backgroundColor = newColor.cssColor;
</script>

Последний раз редактировалось Antoxa Goaller, 04.05.2019 в 23:11.
Ответить с цитированием
  #2 (permalink)  
Старый 04.05.2019, 23:29
Новичок на форуме
Отправить личное сообщение для Antoxa Goaller Посмотреть профиль Найти все сообщения от Antoxa Goaller
 
Регистрация: 10.06.2018
Сообщений: 9

Понял, что подходит решение отсюда https://javascript.ru/forum/misc/763...nit-cveta.html
Ответить с цитированием
  #3 (permalink)  
Старый 04.05.2019, 23:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

Antoxa Goaller,
https://javascript.ru/forum/jquery/5...tml#post355108
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Плавно изменить цвета m~r.Nemo Общие вопросы Javascript 9 11.01.2019 19:59
Плавный переход к элементу по внешней ссылке deniskutovskiy jQuery 13 16.10.2015 22:30
Как получить значение цвета из color picker razorg1991 jQuery 1 06.10.2014 09:06
Изменение цвета кнопки для каждого пользователя kade Общие вопросы Javascript 3 23.09.2014 20:02
Изменения цвета картинки stieve Общие вопросы Javascript 40 23.11.2010 19:47