Jquery image slideshow affichage aléatoire des images

J’utilise un diaporama à partir du lien:

http://www.alohatechsupport.net/webdesignmaui/maui-web-site-design/easy_jquery_auto_image_rotator . J’ai besoin que la première image soit aussi aléatoire. J’avais donné la même classe pour tous les li comme ‘rand’.

var curr=$('div.rotator ul li.rand'); var rc= Math.floor(Math.random() * curr.length); var current=$(curr[rc]); 

Mais je suis coincé avec quoi faire next..plz help !!

Vous pouvez randomiser l’ordre de vos éléments LI à l’aide de cet impressionnant plugin JQuery shuffle de James Padolsey.

Je l’ai utilisé récemment sur un projet et cela a très bien fonctionné pour mes besoins.

De plus, la source est très facile à lire (donc plus facile à comprendre).

http://james.padolsey.com/javascript/shuffling-the-dom/

Pour utiliser cela dans le contexte d’un diaporama, vous pouvez utiliser le plugin JQuery Cycle de Mark Alsup. Mélangez d’abord le dom, puis lancez le diaporama:

  

Voici un autre plugin jQuery qui fait la même chose:

http://yelotofu.com/labs/jquery/snippets/shuffle/demo.html

Quitter la démo que vous avez donnée et que vous pouvez télécharger ici

http://www.alohatechsupport.net/downloads/image-rotator.zip

Assurez-vous de suivre ces instructions dans le code

 //Un-comment the 3 lines below to get the images in random order var sibs = current.siblings(); var rndNum = Math.floor(Math.random() * sibs.length ); var next = $( sibs[ rndNum ] ); 

Et ci-dessous, votre section de document prêt ressemblera à ceci:

 $(document).ready(function() { //Load the slideshow $('div.rotator ul').shuffle(); theRotator(); $('div.rotator').fadeIn(1000); $('div.rotator ul li').fadeIn(1000); // tweek for IE }); 

Le code que vous avez utilisé pour votre diaporama est trop. cela peut être fait beaucoup plus simplement. Voici un exemple de diaporama avec des images aléatoires: http://jsbin.com/iledo3/3

Le code collé ici pour référence: