jQuery Cycle - две анимации в одном цикле - PullRequest
0 голосов
/ 16 января 2011

Я сделал слайд-шоу с помощью jQuery Cycle, но у меня проблема с таймерами. После пары циклов они портятся. Как объединить две анимации цикла в одной функции и с одним таймером?

Спасибо за любую помощь.

одной рубрике:

<div id="slideshow">
  <ul>
    <li>
      <div class="image"><img src="test.jpg" /></div>
      <div class="description">Some text goes here</div>
    </li>
    <li>
      <div class="image"><img src="test.jpg" /></div>
      <div class="description">Some text goes here</div>
    </li>
    <li>
      <div class="image"><img src="test.jpg" /></div>
      <div class="description">Some text goes here</div>
    </li>
  </ul>
</div>

JQuery:

var img = $(this).find('#slideshow div.image');
var desc = $(this).find('#slideshow div.description');
$('#slideshow ul').cycle({
    fx:    'scrollHorz', 
    speed:  'fast', 
    timeout: 5000,
    next:   '.next',
    pause: 1,
    slideExpr: img
});
$('#slideshow').cycle({
    fx:    'scrollVert', 
    speed:  'fast', 
    timeout: 5000,
    next:   '.next',
    pause: 1,
    slideExpr: desc
});

1 Ответ

0 голосов
/ 21 октября 2011

Я думаю, вам следует:

  1. Создать собственную функцию для решения проблемы с обработкой времени (довольно простая функция JS поможет).
  2. Установите «тайм-аут»свойство в ваших циклах до 0, поэтому оно не будет автоматически вычисляться.
  3. Используйте доступные команды «prev» и «next» в вашей пользовательской функции в этой форме:

$('#slideshow').cycle('next');

Я вижу подход в вашем коде, должен поблагодарить вас за прекрасную идею, которую вы только что дали мне.

...