бесконечный цикл вызова
Здравствуйте, дорогие друзья.
Есть на html-странице функция, вызываемая по (window).load. Представляет собой по задумке последовательную анимацию 4-х div-ов - бесконечно, пока пользователь на странице. Смотрел Фленагана, заколебал гугл, ничего найти не могу. Саму ерунду я написал, все отлично работает, скажем, если вызывать ее по hover. Если вызывать по load, она, естественно, крутится один раз, а надо постоянно. Вопрос 1: как закольцевать или бесконечный цикл повторов поставить? Вопрос 2: как реализовать альтернативный вариант с вызовом анимации этой по, скажем, (window).mousemove (в принципе, мне без разницы) - но только чтобы четыре дива анимировались последовательно? Не знаю, надеюсь, то, что я написал можно понять. Ответьте, плиз, на один из вопросов (для функционала это одно и тоже). Спасибо. |
|
У функции animate есть один параметр - функция, которая вызовется при окончании анимации. Вот и настрой.
|
Аааа, jquery...
|
Спасибо. Плохо понял, правда. setinterval почему то работает как settimeout (просто происходит задержка, повторения нет).
miscr, а где посмотреть как это выглядит? И функцию эту присваивать надо последней по счету анимации? |
Что-то типа этого:
function start(){ $('.div1').animate({'left':'+=100px'}, 'slow', function() { $('.div2').animate({'left':'+=100px'}, 'slow', function(){ start(); //зацикливаем }); }); } |
<script type="text/javascript">
$(document).ready(function() { $(window).load(function start() { $("#letter_x").animate({opacity:"0.01", marginTop:"120"}, 1).animate({opacity:"1", marginTop:"190"}, 950); $("#press").animate({opacity:"0.01"}, 950).animate({opacity:"1"}, 950).animate({opacity:"1"}, 2800); $("#cite").animate({opacity:"1"}, 950).animate({opacity:"0.01"}, 950).animate({opacity:"1"}, 950); $("#ploit").animate({opacity:"1"}, 1850).animate({opacity:"0.01"}, 950).animate({opacity:"1"}, 950); }, function() { start(); }); }); </script> Чтой-то я не то делаю, верно? |
Цитата:
Самое кидающееся в глаза: не надо $(window).load т.к. $(document).ready выполняет эту функцию |
miscr, спасибо еще раз. Но без window load не работает вообще (
|
т.е. достаточно:
$(document).ready(function() { start(); // Вызовем первоначально анимацию }); а как писать функцию start смотри выше. |
Часовой пояс GMT +3, время: 14:00. |