position dune balise A en px dans l'ecran - HTML/CSS - Programmation
Marsh Posté le 14-08-2002 à 09:59:36
ce sont les coordonnées de la position de l'élément dans le repère de son papa. pointeur papa = offsetParent. tu n'as qu'à faire une petite boucle pour remonter la hiérarchie et retrouver les coords dans le repère de BODY.
Marsh Posté le 14-08-2002 à 10:13:50
mon lien est dans un tableau donc il se repere par rapport à la balise TD alors???
Marsh Posté le 14-08-2002 à 10:16:25
et <td> est dans le repère de <table>, <table> est dans le repère ... de son parent, etc.
Marsh Posté le 14-08-2002 à 10:30:15
pour obtenir les coordonnées du la balise body..le plus simple c'est dee faire un getElmentsByTagName("Body" )...
Mais un style.top ne me donne rien??
Marsh Posté le 14-08-2002 à 10:39:57
bon je pense avoir bien compris cette histoire de repere..
Mais je ne vois pas comment faire pour positionner un element dans un autre repere??
tu as des exemples sur le web??
Marsh Posté le 14-08-2002 à 10:43:52
grosmethos a écrit a écrit : tu as des exemples sur le web?? |
http://216.239.51.100/search?q=cac [...] n&ie=UTF-8
par exemple ...
Marsh Posté le 14-08-2002 à 10:54:08
bon je vois toujours pas..
Le offsetParent me retourne bien ma balise body...mais je vois pas comment aller chercher les coordonnées de ma balise A avec ça???
Marsh Posté le 14-08-2002 à 10:55:16
tu as du code, tu copiecolles, tu testes, tu vois ce que ça donne.
Marsh Posté le 14-08-2002 à 13:57:45
bon ça y est j'ai recupere et addapter deux fonction qui me permettent de referencer la balise A
function getTop(MyLayer)
{
if (MyLayer.offsetParent)
return (MyLayer.offsetTop + getTop(MyLayer.offsetParent));
else
return (MyLayer.offsetTop);
}
Je fais un alert sur le return je vois bien offsetTop changer:
passe de 5 à 15 puis renvoie 0.
Donc je reprens et arreter moi si je me trompe
Je remonte de balise imbriquée en balise imbriquée jusqu'a plus rien obtenir à part LA BALISE BODY.
Et enfin j'obtiens la distance qui separe ma balise A de mon entete de document!!
Ok donc je viens de comprendre (et decouvrir) une nouvelle propriete offsetParent...
Merci bien!!
Marsh Posté le 14-08-2002 à 14:07:38
mais bon sang c'est si dur que ça le copiercoller ?
var elem = document.all(which);
var pos = elem.offsetLeft;
while (elem.offsetParent != null) {
elem = elem.offsetParent;
pos += elem.offsetLeft;
if (elem.tagName == 'BODY' break;
}
return pos;
en plus c'est en couleur !
ta fonction ne marchera que pour les éléments fils de <body>, c'est à dire de façon extrèmement limitée ...
Marsh Posté le 14-08-2002 à 14:08:13
youdontcare a écrit a écrit : var elem = document.all(which); |
et ça ça suxxe des ours, il faut utiliser document.getElementById()!
Marsh Posté le 14-08-2002 à 14:26:16
Ca suxxe peut etre des ours mais ça marche pareil!!
Par contre dans mon calque que je fais apparaitre lorsque je clique sur le balise a...mon claque se barre completement à droite..
j'ai bô lui definir la propriete left...se barre quand meme...
alors que le propriete top marche tres bien meme apres le click???
Des idées d'ou ça peut venir???
Marsh Posté le 14-08-2002 à 14:48:06
d'autant que si je mets un alert et qu'ensuite je click sur ok ben le menu reste en place alors que si je mets ps d'alert ben sa disparait a droite!!!
J'ai essayé un retrun false mais rien a faire, sans l'alert ça se barre!!
J'ai verifié je n'entre dans aucune fonction!!
C'est assez strange non??
Marsh Posté le 14-08-2002 à 15:29:36
un cti effort pour me laisser partir un week end tranquil!!!
Marsh Posté le 14-08-2002 à 15:47:01
bon j'ai rajouté un cancleBubble au bon endroit et ça passe!!
Marsh Posté le 14-08-2002 à 09:40:05
Salut
Je cherche à obtenir la position d'un lien.
Sur ce lien j'ai un mousedown qui appel une fonction qui me positionne un claque:
event.srcElement.offsetTop
j'obtient un resultat en pixel mais qui ne corrspond pas du tout à la position dans ma page!! dan l'écran oui mais pas de mon doc HTML...
Comment faire pour obtenir la valuer que je cherche