[Javascript] une fonction qui déconne
Kopros
Messages postés
595
Date d'inscription
Statut
Membre
Dernière intervention
-
Kopros Messages postés 595 Date d'inscription Statut Membre Dernière intervention -
Kopros Messages postés 595 Date d'inscription Statut Membre Dernière intervention -
Salut à tous !
Alors voilà, j'ai un select avec une liste de noms d'images. Quand on choisi un nom, un aperçu de l'image s'affiche.
Donc j'ai fais ma petite fonction, ça marche bien, et j'ai voulu l'améliorer : si la largeur de l'image dépasse les 500 px, on redimensionne à 500.
Voici le début de ma fonction :
Le soucis, c'est que quand je sélectionne l'image A une 1ere fois, la variable oImg.width vaut 0.
Je sélectionne l'image B, oImg.width est encore à 0.
Je sélectionne une nouvelle fois l'image A, oImg.width vaut le width de l'image (c'est le résultat attendu).
Je sélectionne B, oImg.width est ok.
Je resélectionne A, ben... ça dépend des fois, oImg.width peut valoir 0 ou la largeur de l'image...
Ce que je comprends pas, c'est que oImg.src contient bien l'adresse de l'image, dans tous les cas.
Quelqu'un a une idée du pourquoi du comment ?
Alors voilà, j'ai un select avec une liste de noms d'images. Quand on choisi un nom, un aperçu de l'image s'affiche.
Donc j'ai fais ma petite fonction, ça marche bien, et j'ai voulu l'améliorer : si la largeur de l'image dépasse les 500 px, on redimensionne à 500.
Voici le début de ma fonction :
function dynprev(adr_img){ var oImg = new Image(); oImg.src = adr_img; var w; w = oImg.width; if (w>500){w = 500;} [...]
Le soucis, c'est que quand je sélectionne l'image A une 1ere fois, la variable oImg.width vaut 0.
Je sélectionne l'image B, oImg.width est encore à 0.
Je sélectionne une nouvelle fois l'image A, oImg.width vaut le width de l'image (c'est le résultat attendu).
Je sélectionne B, oImg.width est ok.
Je resélectionne A, ben... ça dépend des fois, oImg.width peut valoir 0 ou la largeur de l'image...
Ce que je comprends pas, c'est que oImg.src contient bien l'adresse de l'image, dans tous les cas.
Quelqu'un a une idée du pourquoi du comment ?
A voir également:
- [Javascript] une fonction qui déconne
- Fonction si et - Guide
- Telecharger javascript - Télécharger - Langages
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
- Javascript arrondi ✓ - Forum Javascript
1 réponse
Pour le moment je contourne le problème en mettant :
Mais franchement j'aimerais pas laisser comme ça, un coup sur deux l'image fait 100px, puis sa taille normale (ou 500px si elle est trop grande)... Pour parler vulgairement, il pue mon code.
Quelqu'un saurait d'où vient mon problème de base ?
if (w==0){w = 100;}
Mais franchement j'aimerais pas laisser comme ça, un coup sur deux l'image fait 100px, puis sa taille normale (ou 500px si elle est trop grande)... Pour parler vulgairement, il pue mon code.
Quelqu'un saurait d'où vient mon problème de base ?