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 :

offset.left avec Firefox


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 13
    Par défaut offset.left avec Firefox
    Bonjour à tous, je suis actuellement en train de faire un stage et je dois développé un site avec un grande salle (sans le overflow, en plein écran).

    J'utilise offset.top et offset.left pour localiser mes perso dans cette salle (c'est du jQuery). Sous IE pas de problème sa marche nikel mais sous Firefox j'ai un décalage de 60px avec mon offset.left.

    J'ai même utilisé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    		if ($.browser.msie){
    			var clickElementx = offset.left - 250;
    		}
    		else {
    			var clickElementx = offset.left - 260;
    		}
    Pour bien différencié IE de Firefox mais le problème est que sous Firefox le offset.left et géré que dans ma première partie de la page c'est à dire que dès que je scroll mon body suivant x, le offset.left n'est plus géré par Firefox.

    Pouvez vous m'aider s'il vous plait ?

    Merci d'avance.

  2. #2
    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
    Par défaut
    salut

    utilise plutôt cette méthode pour calculer la position d'un élément :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function findPos(obj){
    //position x / y de l'objet
        var x = obj.offsetLeft || 0;
        var y = obj.offsetTop || 0;
    //tant qu'il y a un parent, on ajoute la position de son parent
        while (obj = obj.offsetParent) {
            x += obj.offsetLeft
            y += obj.offsetTop
        }
    //Ici on retour x ou y ( ou les deux dans un tableau ou un hash
        return new Array(x,y);
    }
    cela te retourne un tableau contenant la position left et top réelle

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 13
    Par défaut Merci
    Merci, ton truc sa marche au poil

+ 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. window.resizeTo ne fonctionne pas avec firefox?
    Par FrankOVD dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/06/2005, 15h07
  3. Problème Site Web avec Firefox
    Par bodybug dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 23/01/2005, 23h48
  4. balise <img> dans un tableau avec firefox
    Par yannock dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 25/10/2004, 16h44
  5. fonction left avec sql server 6.5
    Par shake dans le forum Langage SQL
    Réponses: 2
    Dernier message: 29/06/2004, 08h48

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