у меня есть куча < li> элементы, которые я хочу, чтобы анимировать один за другим, так что я делаю это следующее:Пауза между анимацией
<script type="text/javascript">
var i=-1;
var items = $('li');
animateAll();
Функция animateAll() выглядит следующим образом
function animateAll(){
i++;
if(i<items.length){
var cual=items[i];
$(cual).css("position", "absolute");
var xPos=0;//to set the horizontal position
var yPos=0;//vertical position
var xInicial=$('#rec_int').position().left;//initial x position
var xFinal=xInicial+$('#rec_int').innerWidth();
var yInicial=$('#rec_int').position().top;
var yFinal=yInicial+$('#rec_int').innerHeight();
xPos=randomXToY(xInicial,xFinal);
yPos=randomXToY(yInicial,yFinal);
$(cual).css("top",xPos).css("left", yPos);
$(cual).delay(1000).animate({
left: parseInt($(cual).css('left'),10) == 0 ? -$(cual).outerWidth() :0,
top: parseInt($(cual).css('top'),10) == 0 ? -$(cual).outerHeight() : 0
},1000,animateAll());
}
проблема заключается в том, что все < литий> являются анимируемого после того, как 1 секунду с задержкой, все в то же самое время. То, что я хочу достичь, сначала перенесите первый «< li>», затем второй и так далее. Надеюсь, кто-то может помочь
У вас есть итератор, поэтому в задержке используйте задержку (1000 * i), таким образом, задержка составляет 1 секунду после предыдущей, 1000 * 0 = мгновенная, 1000 * 1 = 1 секунда, 1000 * 2 = 2 секунды, 1000 * 3 = 3 секунды и т. Д. это должно исправить это в настоящее время – Ohgodwhy