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 :

un rollover qui ne fonctionne pas [Débutant(e)]


Sujet :

JavaScript

  1. #1
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    1 907
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 907
    Points : 411
    Points
    411
    Par défaut un rollover qui ne fonctionne pas
    bonjour à tous,

    voic mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    <div class="menu01">
    		<!--<a href="liste.php?univ=consommables"><img src="images/design/menu05.gif"></a>-->
    		<script language="Javascript">
    		<a href="liste.php?univ=consommables" onMouseOver="bouton.src = '../images/design/menu05_r.gif';" onMouseOut="bouton.src = '../images/design/menu05_r.gif';"></a>
    		</script>
    		</div>
    mais je n'ai aucune image qui s'affiche et en plus ça me fait bugger ie...

  2. #2
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    est-ce qu'une balise img ayant l'id "bouton" existe ou non? sinon c'est normal

  3. #3
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 649
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 649
    Points : 11 138
    Points
    11 138
    Par défaut
    bonjour,

    -pourquoi encadres-tu ton lien des balises script ?
    -le lien contenant ta balise img est en commentaire.
    (-écris les événements en minuscules )
    -tu as IE qui bugge car comme le dit gerald2545, tu n'as pas d'élément bouton.
    -les src lors de ton mouseover et de ton mouseout désignent la même image.
    -n'y a-t-il pas un souci dans le chemin des images ?
    <img src="images/design/menu05.gif">
    >tu descends dans le dossier image/design
    bouton.src = '../images/design/menu05_r.gif'
    >tu remontes dans le dossier parent puis tu vas dans le dossier image/design



    souhaitais-tu obtenir ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <div>
    <a href="liste.php?univ=consommables"><img src="images/design/menu05.gif" onmouseover="this.src = 'images/design/menu05_r.gif';" onmouseout="this.src = 'images/design/menu05.gif';"></a>
    </div>
    this désigne l'objet appelant l'événement. Ici c'est l'objet img.
    mouse over : tu changes l'image lors du passage de la souris sur le lien
    mouse out : lorsque tu quittes le lien, tu réaffiches l'image de départ..

  4. #4
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    1 907
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 907
    Points : 411
    Points
    411
    Par défaut
    j'ai bien essayé ce code mais ça ne amrche toujours pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <div class="menu01">
    		<script language="Javascript">
    		<a href="liste.php?univ=consommables"><img src="images/design/menu05.gif" onmouseover="this.src = 'images/design/menu05_r.gif';" onmouseout="this.src = 'images/design/menu05.gif';"></a>
    		</script>
    		</div>
    IE me dit qu'il y a une erreue de syntaxe et en plus l'image n'aparaît pas...

  5. #5
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Rhoo, si on te dit que dans une balise script on ne met que du javascript, c'est que c'est vrai !

    ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <script type="text/javascript">
    var x = -1
    var y = 1
    var z = (x + y) * 2
    alert(z)
    </script>
    Pour ce que tu fais, cette balise script est donc totalement illégale et donc, empeche ta page de se lancer...

    ex de ce que tu fais et qu'il ne faut JAMAIS faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script><img onmouseover="this.src='img2.gif'" /></script>
    ex correct de ce que tu voulais faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <img onmouseover="this.src='img2.gif'" />
    <!-- IL N'Y A PAS DE BALISE SCRIPT -->
    Fremy
    Pour vos développements Web et une navigation agréable, le tout gratuit :
    1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
    2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey

  6. #6
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    1 907
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 907
    Points : 411
    Points
    411
    Par défaut
    ça veut dire que pour un rollover on n'a pas besoin de Javascript alors...

  7. #7
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Si !
    Mais le fait de mettre du texte dans l'evenement onmouseover, c'est déjà préciser que c'est du JavaScript !
    La balise script ne sert que pour mettre du code à l'état pur...

    Juste une précision...
    Si tu tiens vraiment à préciser qu'il s'agit du javascript, bien que ce soit totalement decrapted, tu peux faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="button" language="javascript" onclick="alert('onclick')" />
    Fremy
    Pour vos développements Web et une navigation agréable, le tout gratuit :
    1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
    2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey

  8. #8
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 649
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 649
    Points : 11 138
    Points
    11 138
    Par défaut
    ou encore
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="button" onclick="javascript:alert('onclick')" />
    mais là aussi c'est déprécié et inutile.

    Pour faire simple: le code placé dans une balise HTML qui suit un événement (mots clefs commençant par on...) est du javascript, il n'est pas nécessaire de le préciser.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    <img src="image.jpg" onmouseover="alert('mouseover')" onmouseout="alert('mouseout')">
    <span onclick="alert('clic')"> cliquez ici</span>
    <input onclick="alert('clic')">
    exemple d'événements
    onclick
    onmouseover
    onmouseout
    onload
    onunload
    etc.....

    Néanmoins comme l'a précisé FremyCompany si tu insères du code javascript dans le code HTML, tu doit placer des balises script : comme ça le navigateur interprète ce code comme du code javascript et non comme du texte.

    voici un exemple : la boite de dialogue s'affiche et interrompt le chargement de la page tant que tu n'as pas cliqué sur "OK" puis le texte s'affiche.
    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
    18
    19
    20
    21
    22
    23
    24
    25
     
    <html>
    <head>
    <title></title>
    </head>
     
    <body>
     
    <!--Interprete comme du code javascript-->
    <script type="text/javascript">
    <!--
    var a="ceci est du texte"
    var b=50002;
    alert("a= "+a+" b="+b);
     
    //-->
    </script>
    <!--Interprete comme du texte-->
    var a="ceci est du texte"
    var b=50002;
    alert("a= "+a+" b="+b);
     
    </body>
     
    </html>

Discussions similaires

  1. Rollover qui ne fonctionne pas ?
    Par doncho23 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 11/06/2008, 14h43
  2. [SQL] Requête à jointure qui ne fonctionne pas
    Par Bensor dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/12/2004, 16h10
  3. Jointure externe qui ne fonctionne pas
    Par Guizz dans le forum Langage SQL
    Réponses: 3
    Dernier message: 05/02/2004, 12h26
  4. CREATEFILEMAPPING qui ne fonctionne pas???
    Par Jasmine dans le forum MFC
    Réponses: 2
    Dernier message: 06/01/2004, 19h33
  5. UNION qui ne fonctionne pas
    Par r-zo dans le forum Langage SQL
    Réponses: 7
    Dernier message: 21/07/2003, 10h04

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