Problème de redimensionnement image en javascript - HTML/CSS - Programmation
Marsh Posté le 15-12-2009 à 21:51:26
Mouais, problème assez classique. Au moment où tu assignes l'attribut src à ton "new Image()", le chargement de l'image sera fait de manière asynchrone. Si ça prends trop de temps (genre latence réseau, image de grande taille), il y a des chances que lorsque tu essaieras de récupérer sa taille, l'image ne soit pas encore chargée.
Edit: quelques petits trucs bon à savoir quand on débute :
Pour éviter ça utilise l'événement "onload" sur ton image du style (à l'arrache, sans tester) :
Code :
|
Marsh Posté le 17-12-2009 à 21:37:59
Merci de ton aide!
Effectivement avec l'élément onload ça fonctionne beaucoup mieux.
J'ai bien pris note de tes conseils!
Marsh Posté le 01-02-2010 à 22:16:37
J'up le topic malgré que le script ci-dessus fonctionne.
Parfois quand je fais défiler mes images certaines prennent la taille de l'image précédente ce qui fait qu'elles sont allongées ou écrasées...
Parfois aussi malgré la présence de l'élement onload, je vois furtivement l'image à sa taille d'origine...
J4ai bien investigué, mais je soupçonne toujours un problème lors du chargement.
Marsh Posté le 01-02-2010 à 23:20:12
garath_ a écrit : J'up le topic malgré que le script ci-dessus fonctionne. |
Ok, si j'ai bien compris, tu as une liste de vignette, où en cliquant dessus, ça va mettre à jour une image #image_prod, que tu redimensionnes après avoir affecté l'attribut src.
Dans ce cas là, l'apparition furtive sera inévitable.
En fait, je me demande si en enlevant pas simplement cette ligne, ça devrait au moins résoudre ce problème:
Code :
|
Marsh Posté le 01-02-2010 à 23:29:10
Mais si j'enlève cette ligne je ne réaffecte pas ma nouvelle image à l'id "image_prod".
Je ne vois pas comment ça peut marcher...
EDIT: après avoir testé ça ne fonctionne pas... cela ne charge pas la nouvelle image.
En fait le plus gênant n'est pas cette apparition furtive. C'est surtout que l'image suivante prend les dimensions de la précédente... parfois...
Marsh Posté le 10-12-2009 à 21:02:46
Bonjour,
Je suis assez debutant en javascript, mais malgré cela je me suis bien documenté sur les causes de mon problème et je ne vois pas d'où ça vient.
Je cherche à redimensionner une image à la volée.
Pour cela j'utilise ce script:
La fonction redim_image:
Il s'agit d'une visionneuse d'image et, je sais, mon code est assez "bourrin", mais je débute, je le repete .
Mon problème c'est que parfois ma fonction redim_image voit comme comme valeur de hauteur et de largeur 0.
Du coup elle ne redimensionne pas et donc l'image non redimensionnée apparait (forcement... ).
Aucune idée d'où ça peut venir car lorsque j'execute en pas à pas avec firebug tout se passe bien.
C'est comme si javascript executait des instructions avant que ma fonction redim_image soit terminée...
Toute aide serait bienvenue .