11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,
Mon problème est très simple : Comment faire pour récupérer la valeur des marges en javascript??
Pour les assigner
document.getElementById("ddd").style.marginTop=xxx
mais pour les recupperer, ça ne marche pas! Je pense que c'est le même genre que pour style.width et offsetWidth, mais là je bloque :s
Si qq'un pouvais m'aider, ça m'aiderait énormément!!! Merci d'avance!
Solution uniquement IE5+ à ma connaissance :
document.getElementById('element').currentStyle.marginTop
Il doit y avoir un équivalent sur firefox mais je n'en ai aucune idée.
jojo_d a écrit :
Je pense que c'est le même genre que pour style.width et offsetWidth

Bonjour,
offsetTop
Modifié par chmel (30 Apr 2007 - 08:35)
merci bcp quentin! même si c que IE, ça me permet déjà de faire qqes tests!

chmel a écrit :

Bonjour,
offsetTop


Non, ça c'est pour recuperer la valeur de 'top' pas 'margin-top'

// un jour de trouverai!! - et si qq'un à une idée pour firefox Smiley biggol
QuentinC a écrit :

Il doit y avoir un équivalent sur firefox mais je n'en ai aucune idée.


C'est TRES EXACTEMENT ce que je cherche depuis 40 ans... enfin... depuis que je me suis mis aux CSS...
Enfin... il y a une semaine ou deux...

Donc... si quelqu'un sait... et..., tant qu'il y est, pour Konqueror aussi...

Merci d'avance...
Il y a un truc que je ne comprends pas, comment faites-vous pour ne pas savoir quelle marge vous appliquez à un élément. Autrement dit, dans quel cas précis a-t-on besoin de faire cela ?
CNeo a écrit :
Il y a un truc que je ne comprends pas, comment faites-vous pour ne pas savoir quelle marge vous appliquez à un élément. Autrement dit, dans quel cas précis a-t-on besoin de faire cela ?


moi c'est que je refais toute ma mise en page avec le javascript qui calcule où doit aller chaque élément, et il ne me manque que cette valeur à recuperer!

Sinon j'essayais de faire un div déplaçable avec la souris à l'aide des marges au lieu de la position, et pareil, il me manque cette valeur Smiley ohwell Smiley decu
Modifié par jojo_d (02 May 2007 - 17:15)
CNeo a écrit :
Il y a un truc que je ne comprends pas, comment faites-vous pour ne pas savoir quelle marge vous appliquez à un élément. Autrement dit, dans quel cas précis a-t-on besoin de faire cela ?


Dans mon cas il s'agit de faire un JavaScript Super-Multi-Omni-General-Purpose-Qui-Fait-Tout-Dont-Du-Café-Et-Des-Trolls...
Enfin bref, une procédure qui peut s'appeller dans n'importe quel contexte et qui donc va se débrouiller toute seule pour trouver les valeurs dont elle a besoin pour bosser.

Julien Royer a écrit :

getComputedStyle() ?


Tu peux remplacer ton point d'interrogation par trois points d'exclamation !
C'est très exactement cela que je cherche depuis 10 ans !
Enfin... peut-être un peu moins...

Un GRAND MERCI à toi !

Même si... il m'a quand même fallu bosser un peu après pour le mettre en oeuvre afin d'obtenir ce que je voulais...

Pour ceux que l'in-extenso intéresse :

Admettons que l'on veuille obtenir la valeur vp de la propriété CSS truc d'un élément dont l'identifiant est machin:


vp=document.defaultView.getComputedStyle(document.getElementById("machin"),null).getPropertyValue("truc");


Il n'y a encore plus qu'un truc que je ne sais pas c'est à quoi sert le second paramètre de la méthode getComputedStyle.
J'ai mis null, ce n'est pas forcément ce qu'il y a de plus intelligent...

Julien ?
Modifié par aCOSwt (04 May 2007 - 14:48)
aCOSwt a écrit :
Il n'y a encore plus qu'un truc que je ne sais pas c'est à quoi sert le second paramètre de la méthode getComputedStyle.
J'ai mis null, ce n'est pas forcément ce qu'il y a de plus intelligent...

Le second paramètre représente le pseudo-élément ("after", ...). la valeur "null" est donc en général la plus adaptée.
Modifié par Julien Royer (04 May 2007 - 10:33)