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 :

compatibilité avec IE


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 81
    Points : 48
    Points
    48
    Par défaut compatibilité avec IE
    Bonjour,

    J'ai un code qui passe sous FF, Opera, GC et pas sous IE.
    Le voici une fois traduit par le client web :

    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
    <html>
    <HEAD>
    <LINK TYPE="text/css" REL="STYLESHEET" HREF="gfbulle.css">
    <LINK TYPE="text/css" REL="STYLESHEET" HREF="plan.css">
    <script language="JavaScript" type="text/javascript" src="gfbulle.js">
    </script>
     
    <STYLE type="text/css">
     
    body {background-image: url(img/zone_d.gif); background-repeat: no-repeat;height: 2555px;width: 2259px;}
          </STYLE >
     
    </HEAD>        
    <body  background=#ffffff  onLoad="jumpScroll()">
     
    <span class=hide><small class=id>
    <b>Status au 20 07 2010  : </b>connexion au serveur OK, connexion à la base mysql OK.<br></small><br></span>
    <A href="affiche.php?pw=30" OnMouseOver="return(BulleWrite('<span id=fr class=gris><sup >30</sup></span><br><b>Nom : </b>test<br><b>Activité : </b>act<br> <b>Adresse : </b>adre<br><br><center><span class=red>Cliquez pour plus d\'informations</span></center> '));"OnMouseOut ="return(BulleHide());">
     <span  style='position:absolute; left: 500; top:500; '><img src=img/non.png border=0   ></span></A>
     
     
    </body>
    </html>
    Vous pouvez faire le test, sous FF par exemple en cliquant sur l'image (inexistante dans votre cas) cela vous renvoie "Fichier introuvable".
    Alors que sous IE, quand on clic sur l'image ça renvoie rien.
    Quelle modification dois-je effectuer pour que ce code fonctionne sous IE ?

    Cordialement.
    Philippe Rivière

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 397
    Points : 430
    Points
    430
    Par défaut
    Vous pouvez déjà essayer de commencer par remettre chaque chose à sa place dans votre code, il y a dans ce bout de code, un mélange de lignes qui devraient être dans une feuille de style et de code HTML.

    Pour y voir plus clair, il faut commencer par ranger tout ça.

    De plus, je suis étonné que votre code fonctionne sur les autres navigateurs, vous n'avez utilisé aucune "ponctuation".

    Exemple de ce que j'essaye de dire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src=img/non.png border=0   >
    n'a rien à faire ici.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="img/non.png" >
    serait plus approprié pour bien délimiter les données

  3. #3
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Points : 4 835
    Points
    4 835
    Par défaut
    j'ajouterais qu'il faudrait voir le contenu de la fonction qui doit certainement se trouver dans le fichier gfbulle.js

  4. #4
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 81
    Points : 48
    Points
    48
    Par défaut
    Citation Envoyé par tusssss Voir le message
    Vous pouvez déjà essayer de commencer par remettre chaque chose à sa place dans votre code, il y a dans ce bout de code, un mélange de lignes qui devraient être dans une feuille de style et de code HTML.

    Pour y voir plus clair, il faut commencer par ranger tout ça.

    De plus, je suis étonné que votre code fonctionne sur les autres navigateurs, vous n'avez utilisé aucune "ponctuation".

    Exemple de ce que j'essaye de dire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src=img/non.png border=0   >
    n'a rien à faire ici.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="img/non.png" >
    serait plus approprié pour bien délimiter les données
    La ponctuation me posait un problème au niveau du code PHP c'est pourquoi je l'ai enlevée.
    Même avec le ponctuation ça passe sous FF et pas sous IE.
    Une solution ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 397
    Points : 430
    Points
    430
    Par défaut
    Citation Envoyé par le_chomeur Voir le message
    j'ajouterais qu'il faudrait voir le contenu de la fonction qui doit certainement se trouver dans le fichier gfbulle.js
    comme dit plus haut, il nous faut le code javascript de la fonction que vous utilisez, pour voir le fonctionnement.

  6. #6
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 81
    Points : 48
    Points
    48
    Par défaut
    Citation Envoyé par le_chomeur Voir le message
    j'ajouterais qu'il faudrait voir le contenu de la fonction qui doit certainement se trouver dans le fichier gfbulle.js
    Ok merci, demain matin je vous envoie le code de gfbulle.js, car là je ne suis plus au boulot (je suis au chômage à mi temps :p ).

    Mais en faisant un copier coller de mon code sur votre bureau, qui ne pourra donc pas faire appel à cette fonction, ça passera sous FF et pas sous IE.
    Donc je ne pense pas que le PB soit dans cette fonction.

    Je viens de refaire un test chez moi (sans les liens vers les css et js) et c'est le même problème, ça passe sous FF et pas sous IE.

  7. #7
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 81
    Points : 48
    Points
    48
    Par défaut
    Citation Envoyé par tusssss Voir le message
    comme dit plus haut, il nous faut le code javascript de la fonction que vous utilisez, pour voir le fonctionnement.
    Comme dit plus bas j'ai refait les test chez moi et c'est pareil.

    Pour faire le test il suffit de créer un nouveau fichier text coller dedans mon code puis le renommer en test.htm puis l'ouvrir sous FF puis sous IE.

    Voici le code simplifié qui pose le même problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <html>
    <HEAD> 
    </HEAD>        
    <body >
     
     
     
    <A href="affiche.php?pw=30" OnMouseOver="return(BulleWrite('<b>Nom : </b>test'));"OnMouseOut="return(BulleHide());">
     <span  style="position:absolute; left: 500; top:500; "><img src="img/non.png"   ></span></A>
     
     
    </body>
    </html>
    Je ne me suis peut être mal exprimé, je souhaiterai que ce code fonctionne sous IE et pas que sur FF, GC et Opera.
    Il doit y avoir quelque chose sous IE qui fait qu'il interprète différemment le JS.
    Mais mes connaissances en JS ne sont pas suffisante pour trouver la solution.
    C'est pourquoi je viens ici.
    Merci de me dire ce qui cloche au niveau du code javasript, c'est à dire ce qui empêche IE d'ouvrir le lien vers affiche.php?pw=30.

  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 : 54
    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
    Citation Envoyé par mac7474 Voir le message
    Pour faire le test il suffit de créer un nouveau fichier text coller dedans mon code puis le renommer en test.htm puis l'ouvrir sous FF puis sous IE.
    Ben non, si on a pas le code de la fonction BulleWrite(), je vois pas comment on peut tester

  9. #9
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 81
    Points : 48
    Points
    48
    Par défaut Nouveau code
    Bonjour,

    J'ai essayé en allégeant le plus possible et avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <html>
    <HEAD> 
    </HEAD>        
    <body >
     
     
     
    <A href="affiche.php?pw=30" >
     <span  style="position:absolute; left: 500; top:500; "><img src="img/non.png"   ></span></A>
     
     
    </body>
    </html>
    Cela continue à fonctionner sous FF et pas sous IE.
    Où ais-je fait une erreur de syntaxe ?

    De plus maintenant je suis hors sujet car il ne semble pas qu'il y ait un problème de JS mais de codage HTML ou CSS.

  10. #10
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 81
    Points : 48
    Points
    48
    Par défaut
    Citation Envoyé par Bovino Voir le message
    Ben non, si on a pas le code de la fonction BulleWrite(), je vois pas comment on peut tester
    En fait en épurant le code et en enlevant ce qui renvoie vers le css ou le JS ça fait pareil.
    C'est à dire que ça essais d'ouvrir le lien php sous FF et pas sous IE.
    Donc le problème ne semble pas se situer au niveau JS mais HTML ou CSS.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <html>
    <HEAD> 
    </HEAD>        
    <body >
     
     
     
    <A href="affiche.php?pw=30" >
     <span  style="position:absolute; left: 500; top:500; "><img src="img/non.png"   ></span></A>
     
     
    </body>
    </html>
    Quelque chose semble ne pas plaire à IE.
    Mais comme je suis HS ici niveau JS, dois-fermer ou transférer ma discussion ?

  11. #11
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 81
    Points : 48
    Points
    48
    Par défaut Résolution (pb balise span)
    je pense avoir trouvé, IE ne semble pas apprécié que je mette la position de l'image dans une balise span.

    avec ce code ça passe sous IE et FF :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <html>
    <HEAD> 
    </HEAD>        
    <body > 
     
    <A href="affiche.php?pw=30" >
    <img src="img/non.png"   style="position:absolute; left: 500; top:500; "></A>
     
    </body>
    </html>
    Merci à tous pour vos réponses et désolé pour le hors sujet.
    Dois-je faire un délestage ?

  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 : 54
    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
    Citation Envoyé par mac7474 Voir le message
    Dois-je faire un délestage ?
    Non, ça pourra peut-être être utile à d'autres

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 397
    Points : 430
    Points
    430
    Par défaut
    Juste pour un dernier conseil, vous devriez vraiment faire attention à garder un code propre, cela vous évitera surement des problèmes plus tard.

    Par ces mots, je pense à :

    * séparation propriétés css et code html
    * mettre les guillemets quand il en faut

    C'est toujours dommageable et frustrant de passer 1h à corriger des problèmes alors qu'il manque juste des guillemets ou des apostrophes...(même si le problème ne venait pas de la dans ce cas précis)

    Bonne continuation

  14. #14
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 81
    Points : 48
    Points
    48
    Par défaut
    Citation Envoyé par Bovino Voir le message
    Non, ça pourra peut-être être utile à d'autres
    Ok bien reçu.

  15. #15
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 81
    Points : 48
    Points
    48
    Par défaut
    Citation Envoyé par tusssss Voir le message
    Juste pour un dernier conseil, vous devriez vraiment faire attention à garder un code propre, cela vous évitera surement des problèmes plus tard.

    Par ces mots, je pense à :

    * séparation propriétés css et code html
    * mettre les guillemets quand il en faut

    C'est toujours dommageable et frustrant de passer 1h à corriger des problèmes alors qu'il manque juste des guillemets ou des apostrophes...(même si le problème ne venait pas de la dans ce cas précis)

    Bonne continuation
    Merci.
    Généralement je préfère aussi avoir un seul appel vers un fichier css.
    Mais là j'ai un plan avec pleins d'icones qui apparaissent en fonction de coordonnées dans une base de données, donc c'est pour cela que j'ai fait une insertion CSS (depuis des variables php) ds le code HTML pour les coordonnées.

    Pour ce qui est des guillemets en PHP j'évite d'en mettre le plus possible pour éviter de mettes des \ et en plus s'il y a du JS les guillemets doubles me posait problème.

    Je sais que l'on doit mettre les apostrophe pour respecter la norme W3C.
    Mais le plus gros pb que je rencontre c'est d'adapté mon code à IE qui marche souvent sous FF.
    Les browser eux même ne respectant pas le W3C si j'ai bien compris.

    PS : Ce qui me fait perdre le plus de temps je crois, c'est mon manque de connaissance en PHP et JS, car j'ai appris la programmation avec internet et non à l'école, ce qui fait que je peux passer plusieurs jours pour un trucs qui peut vous paraître très simple. Mais c'est pas vraiment un problème tant que je peux venir ici, si vraiment je ne trouve pas tout seul

  16. #16
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 397
    Points : 430
    Points
    430
    Par défaut
    Citation Envoyé par mac7474 Voir le message
    Merci.
    Je sais que l'on doit mettre les apostrophe pour respecter la norme W3C.
    Mais le plus gros pb que je rencontre c'est d'adapté mon code à IE qui marche souvent sous FF.
    Les browser eux même ne respectant pas le W3C si j'ai bien compris.
    Essayer de faire du code cross-browser est toujours un plus. Cependant, il existe des exceptions, comme notamment les intranets, ou le fait d'être cross-browser n'a souvent aucun avantage.

    Il existe des tests javascripts qui permettent de connaître le navigateur de l'utilisateur et d'adapter son code en fonction, ceci est souvent fastidieux, puisqu'il faut développer plusieurs branches.

    Après, libre à chacun de travailler comme il le préfère.

    Citation Envoyé par mac7474 Voir le message
    PS : Ce qui me fait perdre le plus de temps je crois, c'est mon manque de connaissance en PHP et JS, car j'ai appris la programmation avec internet et non à l'école, ce qui fait que je peux passer plusieurs jours pour un trucs qui peut vous paraître très simple. Mais c'est pas vraiment un problème tant que je peux venir ici, si vraiment je ne trouve pas tout seul
    Je pense que la plupart des gens sur ce forum, ont appris le PHP et le JS, tout du moins réellement appris et utilisé, sur les forums et sur internet, et nous avons tous passé des journées entières sur des bugs qui paraitront simple à d'autres et c'est pour ça qu'existe ce forum en effet.

    Je me trompe peut-être en disant cela...

    Bon courage.

  17. #17
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 81
    Points : 48
    Points
    48
    Par défaut
    Citation Envoyé par tusssss Voir le message
    Essayer de faire du code cross-browser est toujours un plus. Cependant, il existe des exceptions, comme notamment les intranets, ou le fait d'être cross-browser n'a souvent aucun avantage.

    Il existe des tests javascripts qui permettent de connaître le navigateur de l'utilisateur et d'adapter son code en fonction, ceci est souvent fastidieux, puisqu'il faut développer plusieurs branches.

    Après, libre à chacun de travailler comme il le préfère.
    Ok ça m'est arrivé pour un PB de gestion des PNG.
    Sous IE je ne pouvais pas avoir un fond translucide, donc je récupérai le user agent pour mettre un fond noir si ct IE.


    Citation Envoyé par tusssss Voir le message
    Je pense que la plupart des gens sur ce forum, ont appris le PHP et le JS, tout du moins réellement appris et utilisé, sur les forums et sur internet, et nous avons tous passé des journées entières sur des bugs qui paraitront simple à d'autres et c'est pour ça qu'existe ce forum en effet.

    Je me trompe peut-être en disant cela...

    Bon courage.
    Ok merci toi aussi et a+

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

Discussions similaires

  1. [BCB] Compatibilité avec le futur Longhorn
    Par kodiac_99 dans le forum C++Builder
    Réponses: 2
    Dernier message: 25/04/2005, 23h38
  2. [JDOM] Compatibilité avec DOM
    Par Righetto Dominique dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 14/01/2005, 14h30
  3. Réponses: 5
    Dernier message: 12/01/2005, 10h55
  4. []Compatibilité avec XP
    Par anne22 dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 23/09/2003, 15h56
  5. [7RC3] Compatibilité avec les anciennes versions ...
    Par Sylvain Leray dans le forum XMLRAD
    Réponses: 3
    Dernier message: 15/05/2003, 16h46

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