Récuperer la taille d'un DIV

Signaler
Messages postés
21
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
30 août 2010
-
Messages postés
26
Date d'inscription
mardi 17 juin 2003
Statut
Membre
Dernière intervention
10 février 2010
-
Bonjour,

J'ai une page dans laquelle j'ai un div (jusque là tout va bien),
Je remplis ce div a l'aide d'une fonction Ajax ( tout va bien encore! )

Le problème est que je voudrais récupérer la taille de ce div donc je fait:

var div_height = $('div').clientWidth;


mais il me retourne 0.
Est-ce que quelqu'un a une idée?

P.s: je ne peux pas définir la taille du div dans le css car il faut qu'il s'adapte a la taille du texte

Merci
Tious

4 réponses

Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
Bonjour,
si il s'agit d'un DIV avec style.display ="none" la valeur retournée est effectivement 0.
Mais l'erreur est peut être ailleurs...
;O)
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
as tu essayé avec
var div_height = $('div').offsetWidth;

;O)
Messages postés
26
Date d'inscription
mardi 17 juin 2003
Statut
Membre
Dernière intervention
10 février 2010

Bonjour,


as tu essayé avec
var div_height = $('div').offsetWidth;



Effectivement, je me suis trompé quand j'ai posté le message je voulais dire "offsetWidth" au lieu de "clientWidth"

Donc pour résumer j'ai bien un div avec style.display ="none" et mon code est
var div_height = $('div').offsetWidth;


Donc dans ce cas, est-ce normal que la valeur retournée est bien 0?
si oui, comment puis-je contourner ce problème?

Merci
Tious
Messages postés
26
Date d'inscription
mardi 17 juin 2003
Statut
Membre
Dernière intervention
10 février 2010

C'est bon, j'ai trouvé!!

En fait la requette ajax n'est pas séquentielle, ce qui veut dire que quand je récupère la taille du div, la requette ajax n'est pas terminée, donc le div est encore vide... heureusement j'utilise prototype, et il existe un callback qui permet d'exécuter une fonction une fois que la requette est finie

Voila
Tious