Bonjour,

J'ai sur mon site une petite galerie image lightbox.
J'ai pour cet exemple 10 photos, mais je souhaite que 5 de ces 10 photos apparaissent et de façon aléatoire a chaque chargement de page.
Quelqu'un pourrait me filer un petit coup de main ?

Code html : 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
<div class="thumbnail">
  <img data-img="images/inauguration/1.jpg" src="images/inauguration/1.jpg"/>
</div>
 
<div class="thumbnail">
  <img data-img="images/inauguration/2.jpg" src="images/inauguration/2.jpg"/>
</div>
 
<div class="thumbnail">
  <img data-img="images/inauguration/3.jpg" src="images/inauguration/3.jpg"/>
</div>
 
<div class="thumbnail">
  <img data-img="images/inauguration/4.jpg" src="images/inauguration/4.jpg"/>
</div>
 
<div class="thumbnail">
  <img data-img="images/inauguration/5.jpg" src="images/inauguration/5.jpg"/>
</div>
 
<div class="thumbnail">
  <img data-img="images/inauguration/6.jpg" src="images/inauguration/6.jpg"/>
</div>
 
<div class="thumbnail">
  <img data-img="images/inauguration/7.jpg" src="images/inauguration/7.jpg"/>
</div>
 
<div class="thumbnail">
  <img data-img="images/inauguration/8.jpg" src="images/inauguration/8.jpg"/>
</div>
 
<div class="thumbnail">
  <img data-img="images/inauguration/9.jpg" src="images/inauguration/9.jpg"/>
</div>
 
<div class="thumbnail">
  <img data-img="images/inauguration/10.jpg" src="images/inauguration/10.jpg"/>
</div>

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
	<script>
      // Nous voila dans le JS, que je vais essayer de le garder le plus clair et concis possible.
 
$(function(){
 
  // C'est ici que nous definissons les images qui doivent ouvrir une lightbox au click.
  // Pour nous, toutes les images dans les élément ovec la classe "thumbnail"
  $(".thumbnail img").click(function(){
    // Récupérationdu body, pour la suite
    var $body = $('body');
    // L'image qui as ete ouverte
    $thumbnail = $(this);
 
    // Nous créons ici nos elements
    var $blackout = $("<div id='blackout'>").css("display", "none");
 
    // La source de notre image provient bien du "data-img" de la thumbnail
    var $img = $("<img>").attr("src", $thumbnail.data("img"));
    $blackout.append($img);
 
    // Nous créons le titre si l'attribut alt existe
    if($(this).attr("alt")){
      var $title = $("<div class='title'>"+ $thumbnail.attr("alt") +"</div>");
      $blackout.append($title);
    }
 
    // Ce block ne s'execute pas maintenant, mais au prochain click sur notre "blackout". Il se lit comme suit :
    // Au clic sur le fond...
    $blackout.click(function(){
      // On fait disparaitre progressivement la lightbox...
      $blackout.fadeOut(function(){
        // Puis on la supprime.
        $blackout.remove();
      })
    });
 
    // On ajoute notre lightbox au body.
    $body.append($blackout);
    //Et enfin nous la faisons apparaitre progressivement.
    $blackout.fadeIn();
 
    // Ces trois petites lignes permettent de centrer l'image en hauteur
    if($img.height() < $blackout.height()){
      $img.css("marginTop", ($blackout.height() - $img.height()) / 2);
    }
 
  })
})
    </script>