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 :

[POO] récupérer la position X d'une div 'menu'


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 6
    Points : 6
    Points
    6
    Par défaut [POO] récupérer la position X d'une div 'menu'
    Bonjour à tous !!!
    Voilà j'ai un petit soucis (de débutant..que je suis !!)
    Je fais actuellement un menu pour un site, et mon probléme est de faire apparaitre ma div 'sous-menu' au bon endroit..sachant que ma div 'menu-principal' sur laquelle j'ai mon onMouseOver est dans un tableau centrer dans ma page..et par conséquence, si l'intérenaute change la taille de sa fenêtre, la position X du 'menu-principal' n'est plus la même !!!

    j'ai essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function position(){
    var coordonneeX = document.getElementById('menu-principal').offsetLeft;
    	alert(coordonneeX);
    	}
    mais celà m'affiche toujours : 0
    Je suppose que je m'y prends mal...excusez moi d'avance, mais sa fait vraiment peu de temps que je javascript'iZe !! je suppose qu'il faudrait faire une comparaison avec la taille de la fenêtre parent mais je ne trouve pas la bonne syntaxe...

    Merci d'avance pour votre aide !!
    (j'espére que je m'endormirais moins bête !!;-))

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Bonjour

    Je suis nouveau moi aussi ! Un nouveau qui répond à un nouveau Je vais donc essayer de ne pas dire de trucs stupides !

    La div 'menu-principal' prend toute la largeur du tableau, et .offsetLeft renvoie l'offset, mais du premier objet duquel dépend ta div, c'est a dire, le tableau. Comme la div prend toute la largeur, l'offset est égal à 0.

    J'ai trouvé un bout de code sur le net :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function OffsetL(Obj) {
    	if (Obj.offsetParent) {return (Obj.offsetLeft + OffsetL(Obj.offsetParent));}
    	else {return (Obj.offsetLeft);}
    }
    alert(OffsetL(document.getElementById('menu-principal')));
    Ce code renvoi le total de l'offset de tous les objets dans lesquels est contenue ta div, c'est à dire "offset tableau/div = 0"+"offset page/tableau = ..."

    Je pense que cela répond à ta question J'espère, surtout !

    Bonne soirée.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par Cruzty
    Bonjour

    Je suis nouveau moi aussi ! Un nouveau qui répond à un nouveau Je vais donc essayer de ne pas dire de trucs stupides !

    La div 'menu-principal' prend toute la largeur du tableau, et .offsetLeft renvoie l'offset, mais du premier objet duquel dépend ta div, c'est a dire, le tableau. Comme la div prend toute la largeur, l'offset est égal à 0.

    J'ai trouvé un bout de code sur le net :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function OffsetL(Obj) {
    	if (Obj.offsetParent) {return (Obj.offsetLeft + OffsetL(Obj.offsetParent));}
    	else {return (Obj.offsetLeft);}
    }
    alert(OffsetL(document.getElementById('menu-principal')));
    Ce code renvoi le total de l'offset de tous les objets dans lesquels est contenue ta div, c'est à dire "offset tableau/div = 0"+"offset page/tableau = ..."

    Je pense que cela répond à ta question J'espère, surtout !

    Bonne soirée.

    héllo !!
    un grand merci pour ta réponse !!!...mais malheureusement ..sa marche pas ..je dois être vraiment une truffe du JS !!! juste une petite question..pour lancer la fonction OffsetL(); je lui passe le nom de ma div menu ?? genre onMouseOver="OffsetL('menu-principal');" ?? ou je me trompe totalement ??

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    OffsetL(document.getElementById('menu-principal'));
    et non pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    OffsetL('menu-principal');


    Bonne journée

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    un grand Merci !!!
    Au final j'ai trouvé un code du même genre avec des ancres ..
    sa marche super bien aussi !!!
    Bonne journée !!

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

Discussions similaires

  1. [XL-2010] récupérer la position exacte d'une cellule (Avec les API)
    Par galopin01 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/03/2015, 19h44
  2. Récupérer valeur parent-enfant d'une div cliquée
    Par lefebvresdesigns dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 28/01/2012, 11h47
  3. position absolue d'une div
    Par helpcomm dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 02/12/2011, 13h37
  4. Comment faire un position:relative sur une div précise de la page ?
    Par Alexandrebox dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 31/07/2009, 22h33
  5. récupérer la position absolue d'un div
    Par natoine dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/02/2008, 16h12

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