Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
790 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [javascript] connaitre la position d'un element dans la page ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[javascript] connaitre la position d'un element dans la page ?

n°631298
k666
dites non à petitmou
Posté le 04-02-2004 à 17:10:01  profilanswer
 

salut
j'aimerais connaitre ne javascript la position d'un div dans ma page (pour faire deux trois bricoles)
eske kelkun connaitrait le nom de la propriété et si possible compatible moz/opera/ie ?
marci bokoo

mood
Publicité
Posté le 04-02-2004 à 17:10:01  profilanswer
 

n°631302
Hermes le ​Messager
Breton Quiétiste
Posté le 04-02-2004 à 17:14:17  profilanswer
 

ça dépend. Tu veux la connaitre en absolute ou en relative ? [:ddr555]

n°631304
MagicBuzz
Posté le 04-02-2004 à 17:16:21  profilanswer
 

Truc IE only : (peut-être adapatable pour les versions récentes de Moz, je sais pas, pas essayé, à l'époque ça existait pas)
 

Code :
  1. function whereIs(myNode)
  2. {
  3.  originalNode = myNode;
  4.  x = 0;
  5.  y = 0;
  6.  while (myNode.tagName != 'BODY')
  7.  {
  8.   x += myNode.offsetLeft;
  9.   y += myNode.offsetTop;
  10.   myNode = myNode.offsetParent;
  11.  }
  12.  originalNode.magicPositionX = x;
  13.  originalNode.magicPositionY = y;
  14. }


 
=> Tu passes par exemple :
 
document.getElementById("tatouille" )
 
Et au final, document.getElementById("tatouille" ).magicPositionX et document.getElementById("tatouille" ).magicPositionY contiennent la position.
 
PS: interdit de changer le nom des variables, c'est moi qui ai créé ce script pourri, faut le laisser tel quel :p

n°631307
Hermes le ​Messager
Breton Quiétiste
Posté le 04-02-2004 à 17:17:34  profilanswer
 

MagicBuzz a écrit :

Truc IE only : (peut-être adapatable pour les versions récentes de Moz, je sais pas, pas essayé, à l'époque ça existait pas)
 

Code :
  1. function whereIs(myNode)
  2. {
  3.  originalNode = myNode;
  4.  x = 0;
  5.  y = 0;
  6.  while (myNode.tagName != 'BODY')
  7.  {
  8.   x += myNode.offsetLeft;
  9.   y += myNode.offsetTop;
  10.   myNode = myNode.offsetParent;
  11.  }
  12.  originalNode.magicPositionX = x;
  13.  originalNode.magicPositionY = y;
  14. }


 
=> Tu passes par exemple :
 
document.getElementById("tatouille" )
 
Et au final, document.getElementById("tatouille" ).magicPositionX et document.getElementById("tatouille" ).magicPositionY contiennent la position.
 
PS: interdit de changer le nom des variables, c'est moi qui ai créé ce script pourri, faut le laisser tel quel :p


 
pauv petit.  :lol:

n°631313
MagicBuzz
Posté le 04-02-2004 à 17:22:15  profilanswer
 

:p

n°631318
Hermes le ​Messager
Breton Quiétiste
Posté le 04-02-2004 à 17:28:25  profilanswer
 


 
 document.getElementById('id_du_div').offsetLeft;
 document.getElementById('id_du_div').offsetTop;
 
marche pour IE 5.5+, Moz 1+ et Opera 7+

n°631324
MagicBuzz
Posté le 04-02-2004 à 17:31:59  profilanswer
 

ça marche pour tout les tags ?

n°631327
Hermes le ​Messager
Breton Quiétiste
Posté le 04-02-2004 à 17:33:11  profilanswer
 

MagicBuzz a écrit :

ça marche pour tout les tags ?


 
Je n'ai pas testé, mais pour les divs en tous cas, ça marche.  :D  
 
Je crois que j'en ai apporté une démonstration suffisamment convaincante ces derniers temps.  :whistle:

n°631330
MagicBuzz
Posté le 04-02-2004 à 17:34:29  profilanswer
 

ok. Mais moi ct pour mon site que j'ai fait avant le XHTML, et c'était pour afficher des trucs dans des TD dans un tableau, imbriqué dans un autre tableau imbriqué dans... et du coup c'est tout ce que j'ai trouvé qui marche :D
 
PS: c'était IE5 à l'époque ;)

n°631442
k666
dites non à petitmou
Posté le 04-02-2004 à 19:25:42  profilanswer
 

marci messieurs !
simultanément j'ai demandé sur irc et on m'a donné ça:
 

Code :
  1. function FindXY(obj){
  2. var x=0,y=0;
  3. while (obj!=null){
  4.  x+=obj.offsetLeft-obj.scrollLeft;
  5.  y+=obj.offsetTop-obj.scrollTop;
  6.  obj=obj.offsetParent;
  7. }
  8. return {x:x,y:y};
  9. }

pas testé sur touuuuuuuuuuus les navigateurs possibles mais ça marche sur safari mozilla ie et opéra :)

mood
Publicité
Posté le 04-02-2004 à 19:25:42  profilanswer
 

n°631460
Hermes le ​Messager
Breton Quiétiste
Posté le 04-02-2004 à 19:33:11  profilanswer
 

k666 a écrit :

marci messieurs !
simultanément j'ai demandé sur irc et on m'a donné ça:
 

Code :
  1. function FindXY(obj){
  2. var x=0,y=0;
  3. while (obj!=null){
  4.  x+=obj.offsetLeft-obj.scrollLeft;
  5.  y+=obj.offsetTop-obj.scrollTop;
  6.  obj=obj.offsetParent;
  7. }
  8. return {x:x,y:y};
  9. }

pas testé sur touuuuuuuuuuus les navigateurs possibles mais ça marche sur safari mozilla ie et opéra :)


 
Et ma solution 24 fois plus simple, elle pue ?

n°631532
k666
dites non à petitmou
Posté le 04-02-2004 à 20:40:58  profilanswer
 

snif pas pu la tester mais j'essaie ça demain matin:jap:

n°1657494
vanish
Ce qui brûle, brûle !
Posté le 13-12-2007 à 01:27:26  profilanswer
 

Hermes ta methode donne la position de l'element par rapport à son parent,  
et encore, en fonction de la zone visible de la page.
Leur méthode donne la position par rapport à la page complète.
 
EDIT :  :sol:  :ange:  :pfff: post-it : *vérifier dates des threads trouvés par google avant d'y répondre*


Message édité par vanish le 13-12-2007 à 01:31:17
n°1843165
p4t4t4rt3
Posté le 26-01-2009 à 14:40:48  profilanswer
 

Héhé j'ai trouver un peu la même solution que vous la Position d'une div, merci google :D

n°1843175
esox_ch
Posté le 26-01-2009 à 14:53:02  profilanswer
 

p4t4t4rt3 a écrit :

Héhé j'ai trouver un peu la même solution que vous la Position d'une div, merci google :D


 
C'est pour quel type de marathon que tu déterres tous les topics vieux de 5 ans qui ont déjà eu au moins 1 réponse?


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [javascript] connaitre la position d'un element dans la page ?

 

Sujets relatifs
gérer les erreurs CGI sous IIS avec une page personnalisée ?[ HTML / CSS ] Mise en page et retour à la ligne.
pb d'affichage page perso frontpageRécupérer la position d'un div avec opéra... Grrrr...
[HTML/JS} ouverture d'une page ...appeller des fonctions php depuis une page asp
[HTML] probleme de position ...mise en page du code...
[w3c] javascript ?élément d'une listbox
Plus de sujets relatifs à : [javascript] connaitre la position d'un element dans la page ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR