IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Changement d'image en cliquant


Sujet :

JavaScript

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Changement d'image en cliquant
    Bonjour tout le monde!
    J'y connais pas grand chose au javascript... Voici un script que j'ai trouvé sur internet et adapté pour mon site:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    imgs=Array("projets/superman/1.png","projets/superman/2.png","projets/superman/3.png","projets/superman/4.png","projets/superman/5.png");
    var x=0;
     
    function change() {
    document.getElementById("bob").src=imgs[++x];
     
    if (x==6) {
    x=0;
    }
    }
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="projets/superman/1.png" id="bob" alt="" onmousedown="change()" style="width: 70%" />

    Ca marche bien, sauf un petit problème! Regardez içi: ICIII

    Une fois cliqué sur la dernière image, c'est comme s'il y avait un lien vers une image suivante qui n'existe pas?... Quelqu'un voit pourquoi ça marche pas?

    Merci d'avance!

  2. #2
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    On revient à la première image à partir de x=6, ce qui laisse donc 6 images possibles, avec comme valeurs pour x : 0 - 1 - 2 - 3 - 4 - 5. Or il n'y a que 5 images dans ta BD.

    Pour faire en sorte qu'elle s'adapte à un nombre quelconque d'images sans avoir à changer la condition à chaque fois, tu peux comparer avec imgs.length :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    var imgs=Array("projets/superman/1.png", "projets/superman/2.png", "projets/superman/3.png", "projets/superman/4.png", "projets/superman/5.png");
    var currentImg=0;
     
    function change() {
    currentImg = (currentImg + 1) % imgs.length;
    document.getElementById("bob").src=imgs[currentImg];
    }

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    Ceci étant plutot qu'un array de string avec les paths ...
    passe par un preloader ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    var strimgs=Array("projets/superman/1.png", "projets/superman/2.png", "projets/superman/3.png", "projets/superman/4.png", "projets/superman/5.png");
     
    imgs=new Array();
    for (i=0;i<5;i++){
    imgs[i]=new Image();
    imgs[i].src=strimgs[i];
    }
     
    var currentImg=0;
     
    function change() {
    currentImg = (currentImg + 1) % imgs.length;
    document.getElementById("bob").src=imgs[currentImg].src;
    }
    Cela évitera le temps de chargement lors du click...

Discussions similaires

  1. Changement d'image suivent le passage du curseur!
    Par ghyosmik dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 03/01/2006, 17h22
  2. [FLASH 8] Realiser un changement d'image
    Par Gemelos dans le forum Flash
    Réponses: 3
    Dernier message: 21/11/2005, 13h48
  3. Changement d'image si l'originale absente
    Par MitchDap dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 16/03/2005, 09h06
  4. changement d'image par radio boutton
    Par ph_anrys dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 14/03/2005, 16h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo