Bonjour a tous,

pour mon site internet j'ai une galerie d'une vingtaine de photo en miniatures, je clic sur une vignette et une grande photo apparaît, je reclic sur la grande photo et la miniature réapparaît.
tous fonctionne trés bien avec le code javascript., mais j'aimerai pouvoir mettre une légende sous la grande photo (un texte très court).j'ai essayé avec figure et les balises div et class mais rien ne marche.il est possible que je me suis mélangé les pinceaux avec les css. Je ne métrise pas beaucoup la programmation.

si quelqu'un a une solution je suis preneur.
Merci .


<div id="galerie">
    <div id="grandeImage"></div>
    <div id="previous"><</div>
    <div id="next">></div>
</div>
<p>
 <a href="photos_galerie_web/grandes_vignettes/escalier-tour.jpg" alt="" Class="gal">
<img src="photos_galerie_web/petites_vignettes/1escalier_tour.jpg" height="167" width="266"  alt="miniature"/></a>
<a href="photos_galerie_web/grandes_vignettes/Cabanne_de_chasseur-2+le.jpg" alt="" Class="gal">
 <img src="photos_galerie_web/petites_vignettes/cabane_de_chasseur-2.jpg" height="167" width="266"  alt="miniature"/></a><span>Cabane de chasseur</span>
</p>
HTML

le javascript

var links = document.getElementsByClassName('gal'), 
    linksLen = links.length,
    grandeImage = document.getElementById('grandeImage'),
    galerie = document.getElementById('galerie'),
    imgActive;
 
for (var i = 0 ; i < linksLen ; i++){
    (function(i){
        links[i].onclick = function(){
            imgActive = i;
            displayImg();
            return false;
        };
    })(i);
}
 document.getElementById('previous').onclick=function(){
    if(!links[--imgActive]) 
        imgActive = linksLen - 1;
    displayImg();
};
document.getElementById('next').onclick=function(){
    if(!links[++imgActive]) 
        imgActive = 0;
    displayImg();
};
 var displayImg=function() {
    var img = new Image();
    img.src = links[imgActive].href;
    img.onload = function(){
        grandeImage.innerHTML = '';
        galerie.style.display = 'block';
        grandeImage.appendChild(img);
    };
};
grandeImage.onclick = function(){
    galerie.style.display = 'none';
};


[/i]
Et moi j'opte pour l'attribut html5 srcset avec un peu de javascript (jQuery). Voir les images cliquables ici : Scriptura Images.

J'ai pris l'option de ne pas proposer le texte déjà présent dans la page, mais rien n'empêche d'étendre la fonction .clone() à la légende de l'image.
Modifié par Olivier C (28 Nov 2016 - 19:56)
bonjour,

c'est le résultat que cherche une grande photo avec un texte en dessous,
par contre pour moi faire du AJAX , j'ai peur de me perdre , si quelqu'un peu me montrer simplement
je veux bien essayer.
Bonjour,
après réflexion je crois que de chercher une solution du cote de l'ajax c'est un trop complexe pour moi.
j'ignore si c'est difficile a programmer , mais je cherche simplement a mettre une légende sous une grande photo. J'arrive tous juste avec le html alors partir sur du ajax.....
merci pour tes conseils
Grisou