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 script qui ne tourne que dans IE mais pas sous FF


Sujet :

JavaScript

  1. #1
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut Un script qui ne tourne que dans IE mais pas sous FF
    Bonsoir, j'ai fait un script js qui tourne bien sous IE pas pas sous FF ; qu'est-ce que je peux 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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
     
    <script>
    function img_verin() {
    document.getElementById("img").src="verin.jpg"; }
    function img_batterie() {
    document.getElementById("img").src="http://www.groupe-reval-sav.com/Photopiece/Batterie.jpg"; }
    function restore_vide() {
    document.getElementById("img").src="img_vide.jpg"; }
    </script>
    <table>
      <tbody>
        <tr>
          <td>
          <table style="border-collapse: collapse;" align="center"
     bgcolor="#ffffff" border="1" bordercolor="#993366"
     cellpadding="2" cellspacing="0">
            <tbody>
              <tr>
                <td align="left" bgcolor="#660033"><font
     color="#ffffff"><b>Syst&egrave;me<br>
                </b></font></td>
                <td align="left" bgcolor="#660033"><font
     color="#ffffff"><b>D&eacute;signation</b></font></td>
                <td align="left" bgcolor="#660033"><font
     color="#ffffff"><b>R&eacute;f&eacute;rence
    REVAL</b></font></td>
                <td align="left" bgcolor="#660033"><font
     color="#ffffff"><b>Quantit&eacute;</b></font></td>
              </tr>
              <tr>
                <td align="left" bgcolor="#660033"><font
     color="#ffffff"><b>Mont&eacute;e
    / Descente</b></font></td>
                <td align="left"><font color="#000000"><a
     href="#" onmouseover="img_verin()"
     onmouseout="restore_vide()">V&eacute;rin</a></font></td>
                <td align="left"><font color="#000000">2503</font></td>
                <td align="left"><font color="#000000">1</font></td>
              </tr>
              <tr>
                <td align="left" bgcolor="#660033"></td>
                <td align="left"><font color="#000000"><a
     href="#" onmouseover="img_batterie()"
     onmouseout="restore_vide()">Batteries</a></font></td>
                <td align="left"><font color="#000000">2288F</font></td>
                <td align="left"><font color="#000000">2</font></td>
              </tr>...
            </tbody>
          </table>
          </td>
          <td>
          <table>
            <tbody>
              <tr>
                <td align="left" bgcolor="#660033"><font
     color="#ffffff"><b>Image</b></font></td>
              </tr>
              <tr height="380">
                <td><img name="img" src="img_vide.jpg"
     width="200"></td>
              </tr>
            </tbody>
          </table>
          </td>
        </tr>
      </tbody>
    </table>
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  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
    Houlà,

    document.getElementById("img")
    <img name="img" src="img_vide.jpg"
    width="200">
    Et IE confond l'attribut name avec id, c'est pourquoi ça marche.

    A+.

  3. #3
    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
    De plus, comme déjà dit ailleurs, écrire x fois une fonction qui fait la même chose à un paramètre près...
    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

  4. #4
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    et même, dans le meilleur des monde, un return false ne serait pas de trop quand tu appelles un script sur lien...

  5. #5
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Merci pour les réponses.

    Et IE confond l'attribut name avec id, c'est pourquoi ça marche.
    J'avais pas fait attention...

    De plus, comme déjà dit ailleurs, écrire x fois une fonction qui fait la même chose à un paramètre près...
    Je conviens que mon code est super dégueu (et pour le colspan à la place du rowspan, une erreur), mais j'ai tenté de factoriser le code et ça va pas, donc il y a encore une erreur dans mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <script>
    function aff_img(url_img) {
    document.getElementById("image").src="url_img";
    return false; }
    </script>
    ...
    <a
     href="#" onmouseover="aff_img(\" verin.jpg\" )"
     onmouseout="aff_img(\"img_vide.jpg\")">V&eacute;rin</a>
    ...
    <img id="image" src="img_vide.jpg" width="200">
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById("image").src="url_img";


    Essaye de comprendre la différence entre la variable url_img et la chaine "url_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
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    OK, on voit bien que je fais rarement du js :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function aff_img(url_img) {
    document.getElementById("image").src=url_img;
    return false; }
    mais il est toujours pas content avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <a
     href="#" onmouseover="aff_img(\"verin.jpg\")"
     onmouseout="aff_img(\"img_vide.jpg\")">
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  8. #8
    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
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="#" onmouseover="aff_img('./verin.jpg')" onmouseout="aff_img('./img_vide.jpg')">
    et vire le return false dans la fonction.

    Citation Envoyé par javatwister
    et même, dans le meilleur des monde, un return false ne serait pas de trop quand tu appelles un script sur lien...
    Si seulement il appelle la fonction dans un événement click.

    A+.

  9. #9
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Je comprends pas le ./ et quand je survole, ça affiche une croix rouge...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  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
    Citation Envoyé par laurentSc Voir le message
    Je comprends pas le ./ et quand je survole, ça affiche une croix rouge...
    ./ ça veut dire que le chemin fait référence du répertoire actuel. S'il met un croix rouge, c'est qu'il n'arrive pas à trouver l'image ou charger l'image.
    Je te conseille de revoir les bases de programmation web (html, javasctipt, ...) et ce que tu utilises d'autre.

    A+.

  11. #11
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Pour la croix rouge, en l'occurence, pas la peine de réviser, car c'était juste une erreur de copier-coller : il manquait le / !! Par contre, si ça marche bien pour les chemins relatifs, ça ne marche pas pour le chemin absolu :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <a
     href="#"
     onmouseover="aff_img('
    http://www.groupe-reval-sav.com/photopiece/batterie.jpg')"
     onmouseout="aff_img('./img_vide.jpg')">Batteries</a>
    J'ai viré le ./ quand il y a un chemin absolu, mais ça ne l'affiche pas quand même...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  12. #12
    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
    Citation Envoyé par andry.aime Voir le message
    S'il met un croix rouge, c'est qu'il n'arrive pas à trouver l'image ou charger l'image.
    Essaie de passer l'url absolue http://www.groupe-reval-sav.com/photopiece/batterie.jpg sur la barre d'adresse .

  13. #13
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    OK, je me suis fait avoir car je développe ce script pour quelqu'un d'autre et que si hier cette URL était encore bonne, aujourd'hui elle ne l'est plus ! J'ai remplacé dans le code par une image à moi et ça marche !
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 07/04/2011, 10h42
  2. [RegEx] REGEX qui ne marche que dans certains cas
    Par Galdon dans le forum Langage
    Réponses: 4
    Dernier message: 14/01/2010, 09h15
  3. RSS qui s'affiche sur IE8.0 mais pas sous FF3.5 !
    Par anxious dans le forum Général Conception Web
    Réponses: 16
    Dernier message: 30/07/2009, 14h05
  4. Réponses: 6
    Dernier message: 05/06/2009, 15h20

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