Мне нужно закодировать набор элементов li, как петлю вертикально вверх, без конца с задержкой 5000 мс между каждым циклом. Я хочу также легко перемещать элементы списка.Как петля список элементов бесконечно?
Мой код запускает цикл каждые 5000 мс в начале, но он не перемещает элементы вверх плавно. И после нескольких итераций цикла он работает очень быстро.
Вот код jquery, который я пытаюсь.
function tick(){
$('#itemflowslider ul li').animate({top:"-225px"},"slow");
$("#itemflowslider ul li:first").appendTo("#itemflowslider ul");
setInterval(function(){ tick() }, 5000);
}
//Call on page load
$(tick);
Не могу понять, в чем причина этой проблемы. Пожалуйста, помогите мне пройти через это.
Спасибо.
EDIT: Я сделал скрипку, но не подумал включить ее в мой вопрос ... http://jsfiddle.net/654DX/2/.
Возможно, это не проблема, но в вашем случае используйте 'setTimeout'. В результате вы вызываете так много интервальных обратных вызовов. – PSL
Или возьмите 'setInterval' из функции. Вызовите его один раз во время загрузки страницы. – Barmar
Попробуйте 'function tick() { $ ('# itemflowslider ul li'). Aimate ({ top:" -225px " }," slow "); $ ("# itemflowslider ul li: first"). AppendTo ("# itemflowslider ul"); } // Позвонить на загрузку страницы $ (отметить); setInterval (tick, 5000); ' –