Erreur : Argument non valide

Mammouth du PHP | 804 Messages

17 oct. 2009, 16:03

Bonjour,

J'essai de créer une fonction simple pour modifier la taille d'une div, je pense ne pas etre loin du compte mais mon code me génère une erreur ?

Erreur : Argument non valide.

Code : Tout sélectionner

function resizeH() { var w = document.getElementById('bloc_recadre').style.width + 1; document.getElementById('bloc_recadre').style.width = w +"px"; // erreur à cette ligne à priori }
merci d'avance

Mammouth du PHP | 2937 Messages

17 oct. 2009, 16:29

Lorsque tu sélectionnes une largeur définie par un attribut style, la chaîne retournée comporte également l'unité employée (px, em, %…). Ce qu'il faut, c'est extraire la valeur sans l'unité afin de l'incrémenter.

Corrige ton code comme suit :

Code : Tout sélectionner

function resizeH () { var w = document.getElementById('bloc_recadre').style.width; // On éclate la chaîne retournée par w, de façon à extraire la valeur numérique var valeur = w.split (/[a-z]/); // Un tableau est retourné, dont le premier élément comporte la valeur à incrémenter var new_w = parseFloat (valeur[0]) + 1; // On force la conversion en nombre, sinon on obtient 2001 par concaténation document.getElementById('bloc_recadre').style.width = new_w + 'px'; }

Mammouth du PHP | 804 Messages

17 oct. 2009, 18:27

Remarquable, en plus je prends un cours ;)
je vais pouvoir avancer, merci beaucoup