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 :

Accéder au texte descriptif d'une image après un clic dessus


Sujet :

JavaScript

  1. #1
    Membre chevronné

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Points : 1 752
    Points
    1 752
    Par défaut Accéder au texte descriptif d'une image après un clic dessus
    Bonjour,
    je voudrais une fonction qui renvoie le texte alternatif d'une image lorsque l'on clique dessus.
    Il me faudrait une méthode qui marche avec un nombre inconnu a priori d'images.

    Toute info. est la bienvenue.

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Salut,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <script type="text/javascript">
    function affiche()
    {
     var mesImages=document.images;
    for (var i=0;i<mesImages.length;i++)
    {mesImages[i].onclik=function(){alert(mesImages[i].alt)}}
    }
    </script>
    <body onload="affiche()">

  3. #3
    Membre chevronné

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Points : 1 752
    Points
    1 752
    Par défaut
    Merci pour cette réponse mais je n'ai pas réussi à la faire marcher. Voici le code HTML que j'ai essayé de faire :
    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
    <html>
    <head>
    	<script type="text/javascript">
    		function affiche(){
    			var mesImages=document.img;
    			for (var i=0;i<mesImages.length;i++){
    				mesImages[i].onclik = function(){alert(mesImages[i].alt)}
    			}
    		}
    	</script>
    </head>
     
    <body onload="affiche()">
    <img src="im_1.jpg" name="images1" width="256" height="192" border="1" alt="im_1">
    <img src="im_2.jpg" name="images2" width="609" height="457" border="1" alt="im_2">
    </body>
    </html>
    Au pire une solution où il faut ajouter l'action directement dans les balises "image" qui appellerait une fonction JS avec le texte alternatif me conviendrait aussi.

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Salut,

    Remplace par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mesImages[i].onclik=function(){alert(this.alt)}
    L'explication est dans la FAQ !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre chevronné

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Points : 1 752
    Points
    1 752
    Par défaut
    Cela ne marche pas. Je vais me tourner vers une méthode classique directe.

    Merci pour la FAQ.

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Mais non, ne désespère pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var mesImages=document.images;
    voire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var mesImages=document.getElementsByTagName('img');
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    Membre chevronné

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Points : 1 752
    Points
    1 752
    Par défaut
    Cela ne marche toujours pas. Cela doit venir du fait que mes images sont déjà présentes dans le fichier HTML au lieu d'être créées par le script.

    Merci quand même.

  8. #8
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Non, pas du tout, cela vient du fait que andry a écrit son code rapidement et qu'il y a des fautes de frappe !
    Au lieu de juste dire ça ne marche pas, il faut regarder un peu le code et corriger :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mesImages[i].onclick = function(){alert(this.alt)}
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  9. #9
    Membre chevronné

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Points : 1 752
    Points
    1 752
    Par défaut
    Voici mon code au complet avant que j'aille me coucher :
    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
    <html>
    <head>
    	<script type="javascript">
    		function affiche(){
    			var mesImages=document.getElementsByTagName('img');
    			for (var i=0;i<mesImages.length;i++){
    				mesImages[i].onclick = function(){alert(this.alt)}
    			}
    		}
    	</script>
    </head>
     
    <body onload="affiche()">
    <img src="im_1.jpg" name="images1" width="256" height="192" border="1" alt="im_1">
    <img src="im_2.jpg" name="images2" width="609" height="457" border="1" alt="im_2">
    </body>
    </html>

  10. #10
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Salut,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function affiche()
    {
    	for(var i=0; i<document.images.length;i++){document.images[i].onclick=function(){alert(this.alt)}}
    }
    Tester sur FF et IE6 et ça marche.

  11. #11
    Membre chevronné

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Points : 1 752
    Points
    1 752
    Par défaut
    Ecoutes voici ton code et cela ne marche pas...
    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
    <html>
    <head>
    	<script type="javascript">
    		function affiche()
    {
    	for(var i=0; i<document.images.length;i++){document.images[i].onclick=function(){alert(this.alt)}}
    }
    	</script>
    </head>
     
    <body onload="affiche()">
    <img src="im_1.jpg" name="images1" width="256" height="192" border="1" alt="im_1">
    <img src="im_2.jpg" name="images2" width="609" height="457" border="1" alt="im_2">
    </body>
    </html>

  12. #12
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript">
    Type correspond au type mime de la ressource, language à la version souhaitée de JavaScript
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  13. #13
    Membre chevronné

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Points : 1 752
    Points
    1 752
    Par défaut
    Au temps pour moi, j'avais oublié de changer cela... Effectivement cela marche très bien.

    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. affichage full size d'une image quand on clic dessus
    Par skwateur dans le forum Débuter
    Réponses: 2
    Dernier message: 08/05/2012, 13h16
  2. afficher du texte cacher derière une image après un clic
    Par paradiseofddl dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 24/05/2009, 23h57
  3. [CSS] aligner texte à gauche d'une image
    Par ilood dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 05/06/2005, 16h04
  4. [HTML]Texte autour d'une image
    Par JiJiJaco dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 23/02/2005, 14h35
  5. Texte autour d'une image
    Par C.M dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 08/12/2004, 10h16

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