Afficher image selon référence en Javascript
Résolu
nova-gaia
Messages postés
218
Date d'inscription
Statut
Membre
Dernière intervention
-
nova-gaia Messages postés 218 Date d'inscription Statut Membre Dernière intervention -
nova-gaia Messages postés 218 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Afficher image selon référence en Javascript
- Image iso - Guide
- Acronis true image - Télécharger - Sauvegarde
- Reduire taille image - Guide
- Afficher google en page d'accueil - Guide
- Légender une image - Guide
6 réponses
Autant pour moi je n'avais pas compris
quelque chose comme ca ?
Par contre ton répertoire watch/big ne contient pas toutes les images correspondantes au zoom..
Adns
quelque chose comme ca ?
$('.loupe').click(function() { // Quand on clique sur la preview srcImage = $('.jquery-reel').attr('src').replace('watch','watch/big') $('#big').attr('src',srcImage); //On change l'image du "zoom" par celle du "mini" $('.preview_big').show(); // Affiche l'apercu en grand $(this).animate(function() { $(this).animate({ opacity: 0.7 }, 500); // La transparence est de 70% },function() { // et $(this).animate({ opacity: 1.0 }, 500); // La transparence est de 100% }); $('.img_container').each(function() { $(this).show(function() { // Affiche l'apercu en grand $(this).animate({ opacity: 0.7 }, 500); // La transparence est de 70% },function() { // et $(this).animate({ opacity: 1.0 }, 500); // La transparence est de 100% }); $('.croix').show(); // Affiche la croix de fermeture $('.img_container').show(); // Affiche le bloc d'apercu }); });
Par contre ton répertoire watch/big ne contient pas toutes les images correspondantes au zoom..
Adns
<div id="general"> <h1>Photos - Système aperçu + Reel</h1> <div class='img_preview'> <img class="img32" src="img/watch/001.jpg" alt="montre" /> <img class="loupe" src="img/loupe.png" alt="preview" /> </div> <div class="img_container"> <img src="img/watch/big/001.jpg" class="preview_big" alt="preview_big" /> <img src="img/croix.png" alt="croix" class="croix" /> </div> </div>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Pour le HTML j'ajouterais des id à tes images comme ceci
ainsi pour le JS
Adns
<div id="general"> <h1>Photos - Système aperçu + Reel</h1> <div class='img_preview'> <img id="mini" class="img32" src="img/watch/001.jpg" alt="montre" /> <img class="loupe" src="img/loupe.png" alt="preview" /> </div> <div class="img_container"> <img id="big" src="img/watch/big/001.jpg" class="preview_big" alt="preview_big" /> <img src="img/croix.png" alt="croix" class="croix" /> </div> </div>
ainsi pour le JS
$('.loupe').click(function() { // Quand on clique sur la preview $('#big').attr('src',$('#mini').attr('src')); //On change l'image du "zoom" par celle du "mini" $('.preview_big').show(); // Affiche l'apercu en grand $(this).animate(function() { $(this).animate({ opacity: 0.7 }, 500); // La transparence est de 70% },function() { // et $(this).animate({ opacity: 1.0 }, 500); // La transparence est de 100% }); $('.img_container').each(function() { $(this).show(function() { // Affiche l'apercu en grand $(this).animate({ opacity: 0.7 }, 500); // La transparence est de 70% },function() { // et $(this).animate({ opacity: 1.0 }, 500); // La transparence est de 100% }); $('.croix').show(); // Affiche la croix de fermeture $('.img_container').show(); // Affiche le bloc d'apercu }); });
Adns
Hum Ok essaye avec ce bout de JS la pour voir
sans toucher au html
Adns
sans toucher au html
$('.loupe').click(function() { // Quand on clique sur la preview $('.img_container').attr('src',$('jquery-reel').attr('src')); //On change l'image du "zoom" par celle du "mini" $('.preview_big').show(); // Affiche l'apercu en grand $(this).animate(function() { $(this).animate({ opacity: 0.7 }, 500); // La transparence est de 70% },function() { // et $(this).animate({ opacity: 1.0 }, 500); // La transparence est de 100% }); $('.img_container').each(function() { $(this).show(function() { // Affiche l'apercu en grand $(this).animate({ opacity: 0.7 }, 500); // La transparence est de 70% },function() { // et $(this).animate({ opacity: 1.0 }, 500); // La transparence est de 100% }); $('.croix').show(); // Affiche la croix de fermeture $('.img_container').show(); // Affiche le bloc d'apercu }); });
Adns
Ce code fonctionne
Le problème c'est que l'id de référence (jquery-reel-1310559285054) change à chaque rechargement de la page.
Il te faut donc trouver un autre moyen de récupéré l'image courante
Comme par exemple en remplacant
par
Ainsi on ne se réfère plus à l'id mais à la classe de l'objet..
Adns
$('.loupe').click(function() { // Quand on clique sur la preview $('#big').attr('src',$('#jquery-reel-1310559285054').attr('src')); //On change l'image du "zoom" par celle du "mini" $('.preview_big').show(); // Affiche l'apercu en grand $(this).animate(function() { $(this).animate({ opacity: 0.7 }, 500); // La transparence est de 70% },function() { // et $(this).animate({ opacity: 1.0 }, 500); // La transparence est de 100% }); $('.img_container').each(function() { $(this).show(function() { // Affiche l'apercu en grand $(this).animate({ opacity: 0.7 }, 500); // La transparence est de 70% },function() { // et $(this).animate({ opacity: 1.0 }, 500); // La transparence est de 100% }); $('.croix').show(); // Affiche la croix de fermeture $('.img_container').show(); // Affiche le bloc d'apercu }); });
Le problème c'est que l'id de référence (jquery-reel-1310559285054) change à chaque rechargement de la page.
Il te faut donc trouver un autre moyen de récupéré l'image courante
Comme par exemple en remplacant
$('#big').attr('src',$('#jquery-reel-1310559285054').attr('src'));
par
$('#big').attr('src',$('.jquery-reel').attr('src'));
Ainsi on ne se réfère plus à l'id mais à la classe de l'objet..
Adns
OUIIIIIIIIIIIIII!!!!!
SA FONCTIONNE MERCI BEAUCOUP ENFIN!!!!