Здравствуйте! Хотел сделать чтобы при нажатии кнопки менялся цвет объекта. Например 3 цвета и при нажатии на кнопку они меняются по кругу(одно нажатие - смена одного цвета, второе - следующий цвет и т.д.)
Долго дуплил, писал длинные коды, ничего не работало! В итоге понял, что проблема с функцией!
<button onClick="nu()">Надпись</button>
<script>
var hy = ['1', '2', '3'];
function nu(huy) {
hut = hy.splice(0, 1);
alert(hy);
}
</script>
если вынести массив из функции, как на примере выше, то функция его не видит. Если объявить массив в самой функции, то при каждом нажатии массив обновляется и всегда отвечает "2,3".
Как сделать чтобы получить данные из массива и внести изменения в массив??
function color2() {
var color = ['1', '2', '3'];
var cString = color.join();
var cStrigIf = cString.indexOf(i);
var colorId = document.getElementById("square");
var i = 1;
for (var i = 1;; i++) {
if (cStringIf(i) == true) {
color.splice(0, 1);
return i;
}
else {
continue;
}
}
color.splice(i-1, 0, i);
switch(i) {
case 1 :
colorId.style.backgroundColor = "white"
;
break;
case 2 :
colorId.style.backgroundColor = "gold"
;
break;
case 3 :
colorId.style.backgroundColor = "lime"
;
break;
}
if (i > 3) {
color.splice(0);
}
}
Вот, так я представлял "рабочий" код, но все оказалось сложно из-за моих плохих знаний языка. Но я только начинаю его учить и решил сделать такую программу, думая, что все просто!