Bingo1045
Messages postés21Date d'inscriptionsamedi 24 septembre 2011StatutMembreDernière intervention21 mai 2015
-
11 oct. 2014 à 03:16
Utilisateur anonyme -
4 nov. 2014 à 22:37
Bonjour,
Après des recherches infructueuses sur Google, je me tourne vers vous pour trouver un exemple de galerie d'images qui fonctionnerait sans la bibliothèque JQuery.
Donc, seulement js, css et html.
Voici un exemple de ce que j'aimerais obtenir:
Listes de mes besoins: - Vignette courante (sélectionnée) avec un encadré bleu
- Grande image
- Boutons de navigation entre les thumbnails (vignettes)
html
<divid="galerie"><ulid="galerie_mini"><li><ahref="images/3-contenu/gallerie-images/vignettes/img-vignette1.png"title="Titre de la photo 1"name="petites"><imgsrc="images/3-contenu/gallerie-images/vignettes/img-vignette1.png"alt="Amoya"/></a></li><li><ahref="images/3-contenu/gallerie-images/vignettes/img-vignette2.png"title="Titre de la photo 2"name="petites"><imgsrc="images/3-contenu/gallerie-images/vignettes/img-vignette2.png"alt="Ubisoft"/></a></li><li><ahref="images/3-contenu/gallerie-images/vignettes/img-vignette3.png"title="Titre de la photo 3"name="petites"><imgsrc="images/3-contenu/gallerie-images/vignettes/img-vignette3.png"alt="CGI"/></a></li><li><ahref="images/3-contenu/gallerie-images/vignettes/img-vignette4.png"title="Titre de la photo 4"name="petites"><imgsrc="images/3-contenu/gallerie-images/vignettes/img-vignette4.png"alt="Le titre de la photo 4"/></a></li><li><ahref="images/3-contenu/gallerie-images/vignettes/img-vignette5.png"title="Titre de la photo 5"name="petites"><imgsrc="images/3-contenu/gallerie-images/vignettes/img-vignette5.png"alt="Le titre de la photo 5"/></a></li><li><ahref="images/3-contenu/gallerie-images/vignettes/img-vignette6.png"title="Titre de la photo 6"name="petites"><imgsrc="images/3-contenu/gallerie-images/vignettes/img-vignette6.png"alt="Le titre de la photo 6"/></a></li><li><ahref="images/3-contenu/gallerie-images/vignettes/img-vignette7.png"title="Titre de la photo 7"name="petites"><imgsrc="images/3-contenu/gallerie-images/vignettes/img-vignette7.png"alt="Le titre de la photo 7"/></a></li><li><ahref="images/3-contenu/gallerie-images/vignettes/img-vignette8.png"title="Titre de la photo 8"name="petites"><imgsrc="images/3-contenu/gallerie-images/vignettes/img-vignette8.png"alt="Le titre de la photo 8"/></a></li><li><ahref="images/3-contenu/gallerie-images/vignettes/img-vignette9.png"title="Titre de la photo 9"name="petites"><imgsrc="images/3-contenu/gallerie-images/vignettes/img-vignette9.png"alt="Le titre de la photo 9"/></a></li><li><ahref="images/3-contenu/gallerie-images/vignettes/img-vignette10.png"title="Titre de la photo 10"name="petites"><imgsrc="images/3-contenu/gallerie-images/vignettes/img-vignette10.png"alt="Le titre de la photo 9"/></a></li></ul><divid="photo"><p><imgid="big_pict"src="images/3-contenu/gallerie-images/img1.png"alt="Photo 1 en taille normale"name="grande"/></p></div><buttonid="prec">Précédent</button><buttonid="lect">Lecture</button><buttonid="suiv">Suivant</button>
css
div#galerie{width:500px ;
background:#303030;
border:1pxsolid#dcb ;
padding:15px ;
margin:15px30px ;
text-align:center ;
font:0.9emGeorgia, serif ;
}
ul#galerie_mini{margin-left:30px;
padding:0 ;
list-style-type:none ;
}
ul#galerie_mini li
{float:left ;
}
ul#galerie_mini li a img
{margin:2px1px ;
border:1pxsolid#dcb ;
}
ul#galerie_mini li:hover a img
{/*le hover ne fonctionne que pour les deux dernières images???*/margin:2px1px ;
border:5pxsolid#0489B1 ;
}
javascript
window.addEventListener("load",init,false);// Rappel// 425px X 300px// 100px X 70px// Le numéro de l'imagevar noImg =0;functioninit(){// Pour les boutons
document.getElementById("prec").addEventListener("click",reculer,false);
document.getElementById("suiv").addEventListener("click",avancer,false);
document.getElementById("lect").addEventListener("click",lecture,false);// Survol des images
document.getElementById("petites").addEventListener("mouseover",changerImage,false);
document.getElementById("petites").addEventListener("mouseout",remettreImage,false);// http://www.alsacreations.com/tuto/lire/557-galerie-photo-javascript.htmlvar photos = document.getElementById('galerie_mini');// On récupère l'élément ayant pour id galerie_minivar liens = photos.getElementsByTagName('petites');// On récupère dans une variable tous les liens contenu dans galerie_minivar big_photo = document.getElementById('big_pict');// Ici c'est l'élément ayant pour id big_pict qui est récupéré, c'est notre photo en taille normalevar titre_photo = document.getElementById('photo').getElementsByTagName('title')[0];// Et enfin le titre de la photo de taille normale// Une boucle parcourant l'ensemble des liens contenu dans galerie_minifor(var i =0; i < liens.length ;++i){// Au clique sur ces liens
liens[i].onclick =function(){
big_photo.src =this.href;// On change l'attribut src de l'image en le remplaçant par la valeur du lien
big_photo.alt =this.title;// On change son titre
titre_photo.firstChild.nodeValue =this.title;// On change le texte de titre de la photoreturnfalse;// Et pour finir on inhibe l'action réelle du lien};}}functionavancer(){
noImg++;if(noImg == captionText.length){
noImg =0;}
document.getElementById("galerie_mini").src ="images/3-contenu/gallerie-images/vignettes/img-vignette"+ noImg +".png";
document.getElementById("big_pict").innerHTML = captionText[noImg];}functionreculer(){
noImg--;if(noImg ==-1){
noImg = captionText.length -1;}
document.getElementById("galerie_mini").src ="images/3-contenu/gallerie-images/vignettes/img-vignette"+ noImg +".png";
document.getElementById("big_pict").innerHTML = captionText[noImg];}// Si la souris est au-dessus de la zone imageDyn, l'image changefunctionchangerImage(){
document.getElementById("imageDyn").src='images/terminalAnime.gif';}functionremettreImage(){
document.getElementById("imageDyn").src='images/terminal.gif';}functionlecture(){var rotator = document.getElementById('lect'),//get the element
dir ='images/3-contenu/gallerie-images/vignettes/',//images folder
delayInSeconds =1,//delay in seconds
num =0,//start number
len = N;//limitsetInterval(function(){//interval changer
rotator.src = dir + num+'.jpg';//change picture
num =(num === len)?0:++num;//reset if last image reached}, delayInSeconds *50);};