В настоящее время я стараюсь сделать небольшую игру незаметно для себя ради развлечения, когда делаю это и использую, но я застрял на части.setTimeout in for loop
Я хотел бы создать игру с памятью, в которой программа генерирует определенный массив, заполненный именами стрелок, которые должны измениться. Итак, например: слева, слева, вверх, вниз, прямо с этим, я бы хотел изменить левую стрелку 1-го только на зеленый, а не на нормальный, так как второй раз это произойдет дважды, так как 1-й 2 элемента массива «оставлены» ».
Так что я пытался использовать setTimeout в JS и попытался найти его, как его использовать, и ему удалось медленно продвигаться, но я все потерял во всех объяснениях.
Мой текущий код меняет все стрелки, указанные в зеленом массиве, а затем меняет их на нормальный 1 на 1 (на самом деле я не вижу первый смену стрелки вообще, но я предполагаю, что он просто устанавливает setTimeout к нему, поскольку остальное меняется).
for (var j = 0; j < narray.length; j++) {
var image = document.getElementById(narray[j]);
image.src = "arrow-"+narray[j]+"-good.png";
function(j){
sesetTimeout(function(){
var image2 = document.getElementById(narray[j]);
image2.src = "arrow-"+narray[j]+".png";
}, j*1000);
})(j);
Я знаю, что это действительно грязно, но я полностью потерялся в учебниках, с которыми я пытался учиться. Поэтому, если бы кто-нибудь мог мне помочь, я был бы очень любезен. Спасибо заранее!
Является ли это на самом деле ваш код, как в источнике? Кажется, он содержит много синтаксических ошибок. –
Каков ваш вопрос? (Кстати, вы, вероятно, не видите первого изменения, потому что первый тайм-аут равен 0 * 1000 мс) – doldt
не уверен, что вы хотите делать, что находится внутри, какие изображения вы хотите изменить источник и почему вы используете таймаут? – juvian