11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,
Je cherche a faire une fonction en javascript qui me retourne la hauteur du contenu de la page (en gros la hauteur du body). J'ai vu qu'il y avais une multitude de propriétés retournant cette taille mais bien sûr aucune ne fonctionne sur tous les navigateurs (ça serait trop simple !)
Deplus toutes ces propriétés ne me retourne pas la même valeur en fonction du mode de rendu du navigateur (quirks, strict). Je n'ai bien sûr pas accès aux pages qui incluront le Js et je ne peut donc pas être sûr qu'elles auront le même mode de rendu (ça serait également trop facile !)
Je cherche donc, soit une magnifique fonction toute faites qui fonctionne sur la majorité des navigateurs et avec les 2 modes de rendu (je n'ai pas trouvé sur le web). Sinon si une âme charitable passe par là et à la capacité de me dire comment on peut savoir en js quel est le mode de rendu pour la page affichée. Cela m'aiderait déjà grandement. (j'imagine que l'on doit pouvoir tester une propriété qui existe seulement dans un des 2 modes et pas dans l'autre)

Pour les propriétés utilisées j'ai déjà fais des test avec :
document.height
document.body.scrollHeight
document.documentElement.clientHeight
document.body.clientHeight


Merci beaucoup par avance.

P.S : il est a noter que parfois la marge du body et ajouté automatiquement et parfois non, d'où ma question.
Pour ceux que cela intéresse et qui auraient besoin de détecter le mode de rendu du navigateur il faut utiliser la propriété suivante :
document.compatMode

Cette propriété a comme valeur CSS1Compat en mode de rendu strict et la valeur BackCompat en mode de rendu quirks.
C'était pourtant simple ! Smiley biggrin