Задать вопрос
Virel
@Virel
цифровой художник

Писала код анимации по кадрам картинкам, почему не работает?

Добрый вечер!
Писала скриптик для простецкой анимации покадровой у разных картинок.
Есть несколько картинок. Нужно реализовать их анимацию с периодом 0,5 секунд.
Я написала функцию с аргументами кадра и количества кадров всего и пыталась вызвать его внутри имени картинки, чтобы отображать меняющиеся цифры. А картинки назвать в соответствии с ними. Ничего не вышло. =(
<script type="text/javascript">
function animator(allcadr,cadr){

if(cadr==allcadr){ cadr=1; }
else{ setTimeout(cadr++, 500);  }
return document.write(allcadr,"-",cadr);
}
</script>
<script type="text/javascript">

document.write("<img src=\"111- ",let a = animator(2,1);,".jpg\">");
</script>


И так пыталась заменить:
function animator(allcadr,cadr){

for(let i=0;i < allcadr;i++){
cadr += i;
return document.write(allcadr,"-",cadr);
}
}


Простите за быдлокодерство, давно не писала, так ещё и учусь только...)
  • Вопрос задан
  • 115 просмотров
Подписаться 1 Простой Комментировать
Ответ пользователя sunblossom К ответам на вопрос (3)
@sunblossom
Хотел расписать все ошибки, но мне лениво. Напишу просто свой вариант это задачи.

<script>
var frames = ["", "", ""]; // перечисление ссылок на картинки для кадров
var currentframe = 0; // текущая картинка

function NextFrame()
{
    if (currentframe == frames.length - 1)
    {
        currentframe = 0;
    }
    else
    {
        currentframe++;
    }

    document.getElementById("anim").src = frames[currentframe];
}

window.onload = function () { setInterval(function () { NextFrame(); }, 500); }
</script>
<img src="" id="anim" />


Понятия не имею, сработает или нет, но должно.
Ответ написан