11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

J'aimerais tester la largeur d'un éléments grâce à un JS et ensuite modifier (via JS aussi) le CSS d'un autre élément.

Exemple de pseudo code:


SI largeur de elem1 > 300px ALORS
  fond de elem2 = rouge
SINON
  fond de elem2 = vert
FINSI


J'ai essayé de connaître la valeur de la largeur grâce à l'objet style mais j'obtient une chaîne vide. Pour obtenir une valeur de largreur, il faut d'abord en assigner une. Sans doute que la propriété width n'existe que si on l'initialise au préalable...

Dans le cas suivant, le message est une chaîne vide.

var elem = document.getElementById("elem1");
alert(elem.style.width);


Ici, la chaîne retournée par l'alert est égale à 300px.

var elem = document.getElementById("elem1");
elem.style.width="300px";
alert(elem.style.width);


Il doit bien y avoir un moyen d'obtenir cette information, vu que l'inspecteur de style de l'extention firebug me donne une valeur (même si celle-ci n'est pas spécifiée dans mon CSS)

J'espère que quelqu'un pourra m'aider.

Merci pour votre aide
Modifié par Mathieu_vd (04 Aug 2006 - 10:45)