Bonjour, (Et bonne année, c'est pas trop tard)
J'ai une fonction associée à jQuery qui spécifie une liste de photos à afficher:
Jusque là tout va bien, cela fonctionne très bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 <script type="text/javascript"> $( function() { $.vegas( 'slideshow', { delay: 8000, backgrounds: [ { src: 'bg_images/background_1.jpg', fade: 4000 }, { src: 'bg_images/background_2.jpg', fade: 4000 }, ...etc... { src: 'bg_images/background_45.jpg', fade: 4000 }, { src: 'bg_images/background_46.jpg', fade: 4000 } ] } ) ('overlay', { src:'overlays/10.png' }); $( '.documentation' ).click( function() { $( 'ul ul' ).slideToggle(); return false; }); etc... } ); </script>
Seulement, ce que je désire faire est de n'utiliser que quelques images de la liste complète et cela de façon aléatoire.
Pour ça, j'ai écrit le code suivant:
Pour la partie random il n'y a pas de problème, j'ai écrit ça en 10 minu!tes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50 <script type="text/javascript"> <!-- DÉBUT FONCTION RANDOM --> var max_pics=46; <!-- TOTAL IMAGES --> var max_selected_pics=10; <!-- NOMBRE IMAGES A SELECTIONNER --> var randomNumber=0; var bg_pic_id=new Array(max_selected_pics); var bg_pic=new Array(max_selected_pics); var picture_found=false; var duplicate_found=false; var my_pics_list=[]; for (var i=1;i<=max_selected_pics;i++){ picture_found=false; while (picture_found==false){ randomNumber = Math.floor(Math.random() * max_pics) + 1; if (i>1){ duplicate_found=false; for (var u=1;u<i;u++){ if (bg_pic_id[u]==randomNumber){ duplicate_found=true; break; } } if (duplicate_found==false){ picture_found=true; } } else{ picture_found=true; } } bg_pic_id[i]=randomNumber; bg_pic[i]="bg_images/background_" + bg_pic_id[i] + ".jpg"; my_pics_list.push([bg_pic[i]]); } <!-- FIN FONCTION RANDOM --> $( function() { $.vegas('slideshow',backgrounds:{my_pics_list,delay:8000,fade:4000}),('overlay', {src:'overlays/10.png'}); $( '.documentation' ).click( function() { $( 'ul ul' ).slideToggle(); return false; }); <!-- ...ETC... -->
Je n'arrive par contre pas à le faire fonctionner.
Cela doit être la syntaxe du push qui pose problème. (Je suis assez paumé en la matière)
Quelqu'un aurait-il la gentillesse de m'aiguiller sur la bonne voie ? (car maintenant ça fait des heures que ça me rend dingue)
Un tout grand merci d'avance.
Gino
Partager