Domanda

ho fatto con slideshow con jQuery Cycle, ma ho un problema con i timer. Dopo paio di cicli che stanno rovinare. Come posso unire due animazioni ciclo in una funzione e con un timer?

Grazie per tutto l'aiuto.

xHTML:

<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
});
È stato utile?

Soluzione

Penso che si dovrebbe:

  1. Fai la tua funzione personalizzata per il rilascio di movimentazione tempo (piuttosto semplice funzione JS farà il trucco).
  2. Imposta il “timeout” proprietà nei tuoi cicli a 0 in modo da esso non auto-avance.
  3. Utilizzare i comandi disponibili “prev” e “successivo” nella funzione personalizzata in questa forma:

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

vedo l'approccio nel codice, devo grazie alla grande idea che mi hai appena dato tho.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top