статейка. Если нужна бесконечная анимация:
var timer = setInterval(animation,10); // Включает анимацию на 100 кадров в секунду
function animation() {
if(progress == 1000){prog = 0} // На эту переменную пусть опираются все расчёты, цикл анимации займёт 10 сек
prog++;
}
clearInterval(timer); // Выключит анимацию если нужно, потом можно опять включить