Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.08.2017, 07:17
Аспирант
Отправить личное сообщение для Jimmi Посмотреть профиль Найти все сообщения от Jimmi
 
Регистрация: 28.02.2014
Сообщений: 53

Событие в зависимости от введенной цифры в текстовое поле
Есть поле <input type="text">.
Если пользователь пишет туда слово - синий, цвет фона (страницы) должен стать синим, если красный, фон должен стать соответственно красным.

Подскажите как это реализовать?
Ответить с цитированием
  #2 (permalink)  
Старый 28.08.2017, 08:49
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,227

Сообщение от Jimmi
Подскажите как это реализовать?
Как вариант...
- Перехватывать события изменения поля
- Прочитать значений того инпута
- Проанализировать значение и определить цвет фона
- изменить таки фон
Ответить с цитированием
  #3 (permalink)  
Старый 28.08.2017, 09:20
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

самый примитивный вариант
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<input type="text">
	<script>
document.querySelector("input").oninput=function(){
if(this.value == 'красный') document.body.style.backgroundColor = 'red';
else if(this.value == 'синий') document.body.style.backgroundColor = 'blue';
else document.body.style.backgroundColor= 'white';
};
	</script>
</body>
</html>


если много цветов можно создать массив или объект
Ответить с цитированием
  #4 (permalink)  
Старый 28.08.2017, 09:22
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

если на инглише писать можно так
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<input type="text">
	<script>
document.querySelector("input").oninput=function(){
document.body.style.backgroundColor = this.value;
};
	</script>
</body>
</html>
Ответить с цитированием
  #5 (permalink)  
Старый 28.08.2017, 09:39
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

для современных браузеров
<!DOCTYPE html>
<html>
<head>
</head>
<body>
	<input type="text">
	<script>
		var color=[['красный','red'],['синий','blue'],['зеленый','green'],['желтый','yellow'],['фиолетовый','violet'],['оранжевый','orange']];
		document.querySelector("input").oninput =e=>document.body.style.backgroundColor = color.find(el => el[0] == e.target.value)[1];
	</script>
</body>
</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Введое в текстовое поле значение отображается в виде списка чекбоксов rfhnjirf Общие вопросы Javascript 9 17.05.2017 12:21
вывести значение кнопки в текстовое поле matt_xs Общие вопросы Javascript 10 16.04.2016 14:50
в текстовое поле вводить только цифры от -10 до 10 Liza_rub jQuery 3 23.03.2016 11:21
Активировать текстовое поле если стоит галочка (запара с именами) Гробовщик Events/DOM/Window 9 14.06.2013 10:39
Как передать данные из jqGrid в текстовое поле? Rooner jQuery 2 27.09.2012 19:31