Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.08.2014, 13:04
Новичок на форуме
Отправить личное сообщение для thsound Посмотреть профиль Найти все сообщения от thsound
 
Регистрация: 22.08.2014
Сообщений: 5

Массив-массив
Привет друзья. Опять я, опять, возможно с глупой проблемой.
Есть массив с продуктами, есть случайный выбор продукта из массива, есть #color_fruit, который должен окрашиваться в цвет продукта, например: морковь, лук, кукуруза, #color_fruit = background: orange, а если яблоко, огурец и киви, #color_fruit = background: green.
var arr = new Array()
	arr[0] = 'Морковь';
	arr[1] = 'Лук';
	arr[2] = 'Кукуруза';
	arr[3] = 'Яблоко';
	arr[4] = 'Огурец';
	arr[5] = 'Киви';
var rand = Math.floor( Math.random() * arr.length);
document.getElementById('find').value = (arr[rand]);
if (arr[rand] == arr[0]) {
document.getElementById('color_fruit').style.backgroundColor='orange';
} else {
	document.getElementById('color_fruit').style.backgroundColor='black';
}
. Проблема в том, что у меня получается сделать только с морковью Огромная благодарность всем, кто поможет!
Ответить с цитированием
  #2 (permalink)  
Старый 23.08.2014, 13:42
Аватар для BETEPAH
Профессор
Отправить личное сообщение для BETEPAH Посмотреть профиль Найти все сообщения от BETEPAH
 
Регистрация: 23.06.2011
Сообщений: 1,165

в 10й строке добавить условия:
if (rand == 0 || rand == 1 || rand == 2) {
в 13й строке заменить black на green
Ответить с цитированием
  #3 (permalink)  
Старый 23.08.2014, 14:08
Новичок на форуме
Отправить личное сообщение для thsound Посмотреть профиль Найти все сообщения от thsound
 
Регистрация: 22.08.2014
Сообщений: 5

BETEPAH,
ОГРОМНЕЙШЕЕ СПАСИБО! ВЫ СПАСЛИ МОЙ ДЕНЬ!
Ответить с цитированием
  #4 (permalink)  
Старый 24.08.2014, 17:13
Новичок на форуме
Отправить личное сообщение для thsound Посмотреть профиль Найти все сообщения от thsound
 
Регистрация: 22.08.2014
Сообщений: 5

BETEPAH,
Извините пожалуйста, а можно сделать интервалом, т.е для всех в диапазоне 1-3 =green, 3-6 = orange, если массив будет большим (примерно 30-40, писать каждому rand == 0 || rand == 1 || rand == 2, не то что долго, а как то не опрятно, можно ли сократить запись?
Ответить с цитированием
  #5 (permalink)  
Старый 24.08.2014, 19:01
Аватар для BETEPAH
Профессор
Отправить личное сообщение для BETEPAH Посмотреть профиль Найти все сообщения от BETEPAH
 
Регистрация: 23.06.2011
Сообщений: 1,165

if (rand < 3) {}
else {}
Ответить с цитированием
  #6 (permalink)  
Старый 24.08.2014, 19:31
Новичок на форуме
Отправить личное сообщение для thsound Посмотреть профиль Найти все сообщения от thsound
 
Регистрация: 22.08.2014
Сообщений: 5

BETEPAH,
Вы гений! Неужели так просто? Все, работа сделана на 100%, большое спасибо!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в шаблоне диррективы узнать массив это или строка? delias Angular.js 1 18.03.2014 07:33
Отправить, когда четко соберется массив vas88811 Events/DOM/Window 11 26.02.2014 21:55
Массив объектов doox911 Библиотеки/Тулкиты/Фреймворки 6 16.01.2014 22:36
Как создать многомерный массив FRIE Общие вопросы Javascript 29 02.06.2010 19:14
Подскажите, как вернуть js-скрипт массив Polkan AJAX и COMET 18 30.04.2010 23:30