 
			
				08.10.2021, 22:15
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Новичок на форуме 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 08.10.2021 
					
					
					
						Сообщений: 3
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				Динамическая смена цвета DIV
			 
			
		
		
		
		Помогите, пожалуйста, с вопросом. Вообще не понимаю как сделать. Не силен в JS. 
 
Есть: 
1. <div data-var="Sat1" class="sat wind">например значение 93.5</div> и  
2. <div data-var="Con1" class="o2 wind">например значение 158.</div>. в них раз в секунду приходят числовые значения. Так же  приходят по три значения "R_test", "G_test", "B_test" от 0 до 255. 
<div data-var="R_Test" class="R"></div> 
<div data-var="G_Test" class="G"></div> 
<div data-var="B_Test" class="B"></div> 
 
 
Нужно: 
Закрасить эти DIV`ы 1 и 2 используя приходящие значения RGB-цветов. 
Или может проще перевод из RGB в HEX и им уже закрашивать. Даже не знаю. 
 
Сайта нет. Все на локальном сервере. Учусь только. 
 
Заранее огромное спасибо. 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				08.10.2021, 22:54
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 CacheVar 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.08.2010 
					
					
					
						Сообщений: 14,298
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от wave2013
			
		
	 | 
 
	| 
		Или может проще перевод из RGB в HEX и им уже закрашивать.
	 | 
 
	
 
 Если у тебя уже есть цифры для РГБ - их и используй...
 
obj.style.backgroundColor = 'rgb(' + r + ',' + g + ',' + b + ');'
	
 
	| 
		
			Сообщение от wave2013
			
		
	 | 
 
	| 
		Не силен в JS.
	 | 
 
	
 
 Значит придется осваивать или бросать эту затею.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				09.10.2021, 08:26
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Новичок на форуме 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 08.10.2021 
					
					
					
						Сообщений: 3
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от ksa
			 
		
	 | 
 
	| 
		Значит придется осваивать или бросать эту затею.
	 | 
 
	
 
 Да осваивать начал. Но чтобы до этого добраться, нужно минимум полгода учить, а попробовать возможности хотел сейчас, поэтому попросил помощи.
 
Скажите, пожалуйста, как будет выглядеть полная конструкция скрипта. 
 
Спасибо!  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				09.10.2021, 08:35
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от wave2013
			
		
	 | 
 
	| 
		как будет выглядеть полная конструкция скрипта.
	 | 
 
	
 
 
	
 
	| 
		
			Сообщение от wave2013
			
		
	 | 
 
	| 
		приходят числовые значения.
	 | 
 
	
 
 слишком растяжимое  определение, всё что можно изобразить в коде, вам уже показали, об остальном можно только гадать, что у вас и как.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				09.10.2021, 09:49
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Новичок на форуме 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 08.10.2021 
					
					
					
						Сообщений: 3
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от рони
			 
		
	 | 
 
	| 
		слишком растяжимое  определение, всё что можно изобразить в коде, вам уже показали, об остальном можно только гадать, что у вас и как.
	 | 
 
	
 
 Записал экран
Нужно, чтобы цвет фона DIV (class="indiv") в котором ввожу цифру принимал RGB-цвет, записывая значения которые выводятся в классах "R", "G", "B", background: rgb(..., ..., ...); .
 
Спасибо!  
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось wave2013, 09.10.2021 в 09:55.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				09.10.2021, 15:24
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				number to rgb
			 
			
		
		
		
		wave2013,
 
<!DOCTYPE html>
<html>
<head>
    <title>Untitled</title>
    <meta charset="utf-8">
    <style type="text/css">
        [data-var]:after {
            content: attr(data-var);
        }
        .color {
            height: 100px;
            width: 100px;
            background-color: var(--color, #fff)
        }
    </style>
</head>
<body>
    <input type="number" min="0" step="1" value="16777215">
    <div data-var="r : 255" class="r"></div>
    <div data-var="g : 255" class="g"></div>
    <div data-var="b : 255" class="b"></div>
    <div class="color"></div>
    <script>
        window.addEventListener('DOMContentLoaded', function() {
            let color = document.querySelector('.color');
            document.querySelector('input').addEventListener('input', function() {
                let c = +this.value,
                    b = c / 65536 | 0,
                    g = (c - b * 65536) / 256 | 0,
                    r = c - b * 65536 - g * 256;
                let components = {
                    r,
                    g,
                    b
                }
                for (let k in components) document.querySelector(`.${k}`).dataset.var = `${k} : ${components[k]}`
                color.style.setProperty("--color", `rgb(${r},${g},${b})`);
            });
        });
    </script>
</body>
</html>
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 |  
  |