2010-06-28 6 views
2

Je suis un novice JQuery pour le moins alors s'il vous plaît ours avec moi ici.jQuery échanger des images dans une séquence

J'ai besoin d'échanger quelques images dans une séquence temporisée. J'ai trouvé un tutoriel en ligne qui fait ce dont j'ai besoin. Voici le code:

function swapImagesMaps(){ 
var $active = $('#maps .active'); 
var $next = ($('#maps .active').next().length > 0) ? $('#maps .active').next() : $('#maps img:first'); 
$active.fadeOut(function(){ 
    $active.removeClass('active'); 
    $next.fadeIn().addClass('active'); 
    }); 

}

setInterval('swapImagesMaps()', 2000); 

Ce qui est cool, mais j'ai 4 différents conteneurs div avec des images en eux, et je veux qu'ils effacent toutes les 2 secondes. Donc div1 va changer et ensuite 2 secondes plus tard div2 va changer, et ainsi de suite. Une fois qu'il aura traversé les 4 conteneurs div, il reviendra à div1 et changera celui-ci encore et continuera à faire défiler.

J'espère que cela a du sens et j'apprécie n'importe quelle aide ou suggestions!

+0

Vous ne devriez pas passer une chaîne à 'setInterval'. – SLaks

+0

ne pas utiliser eval (javascript dans les chaînes de caractères). 'setInterval (swapImagesMaps, 2000);' à la place. – tcooc

Répondre

0

Vous pouvez stocker les éléments <div> dans un tableau, puis utiliser un index incrémenté pour déterminer l'élément à modifier.

+0

SLaks merci pour la suggestion. Y a-t-il une chance que tu me jettes une référence rapide/un exemple pour le faire? Comme je l'ai dit, je suis un débutant au mieux. – Jason

1

Quelque chose comme this? J'utilise this jQuery Carousel.

comprennent simplement que js et l'appeler comme ceci:

 $('#banner_container').carousel({ 
      autoSlide: true, 
      autoSlideInterval: 4000, 
      pagination: true 
     }); 
Questions connexes