Создадим функцию перемещения
function moveLayerDown(layerName,currTop,topstop)
В ней сначала проверим, не достиг ли слой конечной точки
if (eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.top != topstop'))
если это не произошло, сдвинем слой вниз
currTop+=2; eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.top = currTop');
и рекурсивно вызовем функцию
setTimeout('moveLayerDown("'+layerName+'",'+currTop+','+topstop+')',50);
Вот, что у нас получилось:
function moveLayerDown(layerName,currTop,topstop){ if (eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.top != topstop')){ currTop+=2; eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.top = currTop'); setTimeout('moveLayerDown("'+layerName+'",'+currTop+','+topstop+')',50); } }