У меня проблемы с созданием ступенчатой анимации. Я пробовал это, чтобы анимировать элементы из массива («поле») с задержкой каждого другого элемента на 10 мс. Но он не работает с setTimeout. Значение «i» добавляется после истечения таймаута. Любой совет, как это сделать ?эффект шага с петлей
var box=[]
for (var i = 0; i < document.getElementsByClassName('box').length; i++){box.push(document.getElementsByClassName('box')[i])}
for (var i = 0; i < box.length; i++) {
setTimeout(function() {box[i].style.transform="translateX(150px)"},i*10)
}
Любая помощь или совет apprecaited, спасибо заранее.
это перемещает все элементы сразу, я понятия не имею, почему – Matija
@Matija вы пробовали большее значение как 'я * 100', чтобы увидеть, если он слишком быстро для того, что вы делаете? - Мне пришло в голову, что вы использовали 'i' в двух циклах. Возможно, вы можете изменить его на 'j'. – Brian
yep Я пробовал даже 1000, я записал «i» для консоли и получил числа от 0 до 49, есть 50 элементов в массиве ящиков – Matija