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 :

IE <-> Firefox


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 46
    Par défaut IE <-> Firefox
    bonjour,

    j'ai une page dans laquelle j'ai des <div> hidden.
    Quand je clique sur une image ça met le div à visible et ça le centre sur ma page. Avec Firefox tout marche impeccable !!
    Le problème c'est avec IE. Ca fait pas ce que je veux. J'ai fait des alert() dans mon javascript et le problème vient des fonctions qui ne retournent pas la même valeur suivant le navigateur.

    voici mon code qui est apellé lorsque je clique sur une image:

    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
     
    function afficher(largeur, hauteur, div){
    	if (window.innerHeight) {
    		l_ecran = window.innerWidth;
    		h_ecran = window.innerHeight;
    	} else {
    		l_ecran = document.body.offsetWidth;
    		h_ecran = document.body.offsetHeight;
    	}
     
    	if (window.pageYOffset) {
    		scrollH = window.pageYOffset;
    		scrollG = window.pageXOffset;
    	  } else {
    		scrollH = document.body.scrollTop;
    		scrollG = document.body.scrollLeft;
    	  }
     
    	// positionnement du div en largeur
    	var left;
    	if (largeur < l_ecran){		
    		left = (l_ecran - largeur) / 2;
    	} else {
    		left = 0;
    	}
     
    	// positionnement vertical du div
    	var top;
    	var haut = scrollH;
    	if (hauteur < h_ecran){		
    		top = haut + (h_ecran - hauteur) / 2;
    	} else {
    		top = scrollH;
    	}
     
    	document.getElementById("popup_fond").style.visibility = "visible";
    	document.getElementById(div).style.left = left+ "px";
    	document.getElementById(div).style.top  = top + "px";
    	document.getElementById(div).style.visibility = "visible";
    }
    le problème vient des variables (donc avec IE):
    "scrollH" -> retourne tout le temps 0 !! :-(
    "l_ecran" -> valeurs différents
    "h_ecran" -> idem

    si quelqu'un sait a une idée .....

    merci !

  2. #2
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    Hello ButHead

    c'est le innerMachin qui'est pas reconnu par IE...

    cherche du coté de bodyElement ou computedStyle ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 46
    Par défaut
    c'est bon j'ai trouvé,
    pour le scroll c'est: scrollH = document.documentElement.scrollTop;
    et pour la hauteur de la page visible:
    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
    function getWindowHeight() {
        var windowHeight=0;
        if (typeof(window.innerHeight)=='number') {
            windowHeight=window.innerHeight;
        }
        else {
         if (document.documentElement&&
           document.documentElement.clientHeight) {
             windowHeight = document.documentElement.clientHeight;
        }
        else {
         if (document.body&&document.body.clientHeight) {
             windowHeight=document.body.clientHeight;
          }
         }
        }
        return windowHeight;
    }

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

Discussions similaires

  1. Ecouter la radio avec Firefox
    Par Cian dans le forum Applications et environnements graphiques
    Réponses: 20
    Dernier message: 14/07/2005, 19h19
  2. Réponses: 18
    Dernier message: 19/08/2004, 15h11
  3. [XML][XSL][Mozilla Firefox] Integraton dans une page JSP
    Par BANATACH dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 05/08/2004, 14h46
  4. Java ne fonctionne pas sous Firefox
    Par Info-Rital dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 29/07/2004, 23h37

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