Bonjour à tous,
Dans le but de me créer mon site pour exposer mes photos, je cherche à faire des sections qui affiche une galerie photos lorsque l'on clique dessus.
J'ai tout d'abord tester en commencer par 1 section avec sa galerie photo dont voici les différents codage :
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 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width"> <title>Test</title> <link href="style.css" rel="stylesheet" type="text/css" /> <script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.3.1.min.js"></script> <link rel="icon" type="image/png" href="index.jpeg" /> </head> <body> <button class="btnsec">Section1</button> <div class="gal"> <img src="prep-jenkins1.PNG" style="width: 50%"/> <img src="prep-jenkins2.PNG" style="width: 50%"/> <img src="prep-jenkins3.PNG" style="width: 50%"/> <span class="pre">Précédente</span> <span class="sui">Suivante</span> </div> </div> <!--<button class="btnsec">Section2</button> <div class="section"> <div class="gal"> <img src="prep-toolbox1.PNG" style="width: 50%"/> <img src="prep-toolbox2.PNG" style="width: 50%"/> <span class="pre">Précédente</span> <span class="sui">Suivante</span> </div> </div>--> <script src="script.js"></script> </body> </html>
le script jquery :
Ceci fonctionne lorsque je n'ai qu'une seule section car le souci vient quand j'en créee une deuxième.... je pense qu'il faut que j'itère sur les index des différent blocs mais je n'arrive pas a faire cette manip XD
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 $(document).ready(function(){ var $img = $('.gal img'), $gal = $('.gal'), $btn = $('.btnsec'), $pre = $('.pre'), $sui = $('.sui'), indexImg = $img.length -1, indexbtn = $btn.length, index i = 0, $currentimg = $img.eq(i); $gal.css('display','none'); $btn.click(function(){ $gal.toggle(); $img.css('display','none'); $currentimg.css('display','block'); $pre.click(function(){ i --; if(i >= 0){ $img.css('display','none'); $currentimg = $img.eq(i); $currentimg.css('display','block'); } else{ i = 0; } }); $sui.click(function(){ i ++; if(i <= indexImg){ $img.css('display','none'); $currentimg = $img.eq(i); $currentimg.css('display','block'); } else{ i = indexImg; } }); }); });
Si vous avez une méthode pour le faire je serais heureux de la connaître
merci d'avance !
Partager