поочередный вывод элементов массива
Подскажите, пожалуйста, как реализовать показ элементов массива по очереди? (т.е., сначала первый, через 2 секунды второй и т.д.)
Вот что имеется:
// есть массив $tElems из 16 элементов
for (var i = 0; i<16; i++){
var cft = $tElems[i];
$(cft).animate({opacity: 1},600).delay(2000).stop().animate({opacity: 0},400).delay(2000).stop();
}
Только здесь появляются и исчезают все элементы одновременно, а надо по одному и с интервалом... ps: я новичок, прошу больно не бить) |
в строке перед
.animate({opacity: 1},600) поставьте, например .delay(1000 * i) |
Цитата:
Но даже так все объекты выдаются одновременно :-? |
Цитата:
Все равно не получается :cray: |
Есть ли какие-либо иные методы, кроме .delay()?
Нельзя как-нибудь отложить выполнение показа последующего элемента? Да, и интервал показа для всех элементов равный)) (к примеру, 2 секунды) |
Цитата:
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<p>Hello World</p>
<p>Hello World</p>
<p>Hello World</p>
<p>Hello World</p>
<p>Hello World</p>
<script>
var $tElems = $('p');
$tElems.css({opacity: 0});
for (var i = 0; i < 5; i++) {
var cft = $tElems[i];
$(cft).delay(1000 * i) // добавили задержку
.animate({opacity: 1},600).delay(2000).animate({opacity: 0},400); // .stop() убрали
}
</script>
|
Цитата:
Спасибо огроменное!!! |
to Maxmaxmахimus:
Спасибо большущее!!! Это то, что я искала!) |
| Часовой пояс GMT +3, время: 12:46. |