|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : mai 2011 Messages : 4 ![]() |
Bonjour,
Je souhaiterais déterminer la hauteur et largeur d'un nombre inconnu d'images grâce à javascript, mais je rencontre certains problèmes. Pour tenter de réaliser ce script, j'ai procédé comme suit : Code :
Pour moi ça vient du fait que la boucle s'exécute sans attendre la fin du chargement de l'image précédente ce qui modifie la variable picture en cours d'utilisation. J'ai bien pensé à transformer la variable picture en un tableau de la manière suivante : Code :
Pourriez vous m'aidez à corriger ce problème? Merci |
||||
|
|
00
|
|
|
#2 |
![]() ![]() Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur Inscription : mars 2002 Messages : 30 007 ![]() |
?
?
__________________
Ma page Developpez Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts) Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir... Votre post est résolu ? Alors n'oubliez pas le Tag ![]() ![]() réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mai 2011 Messages : 4 ![]() |
@SpaceFrog
Non, le problème n'est pas vraiment de récupérer la taille de l'image, le problème est plutôt de charger les images dans des variables différentes de manière à pouvoir récupérer les paramètres de taille (enfin à mon sens). Mon code marche très bien en l'absence de la boucle for. Si il y a 10 images et que je met ce bout de code 10 fois (avec des noms de variables incrémenté manuellement), ça marche parfaitement. Mais bon, moi, ce que je veux c'est quelque chose de dynamique, donc cette solution ne me convient pas. Sinon, je ne pense pas que 'style' soit nécessaire dans mon cas étant donné que c'est un objet image et non un block |
|
|
00
|
|
|
#4 | |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 806 ![]() |
Citation:
![]() Code :
picture[j].onload = function(){alert(this.width+'*'+this.height);}
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
|
00
|
|
|
#5 | ||
![]() ![]() Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur Inscription : mars 2002 Messages : 30 007 ![]() |
Essaye ça
Code :
__________________
Ma page Developpez Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts) Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir... Votre post est résolu ? Alors n'oubliez pas le Tag ![]() ![]() réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr |
||
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : mai 2011 Messages : 4 ![]() |
@Bovino
Ah oui, c'est fort possible, mais comment je pourrais régler ce problème dans ce cas? PS : je ne peux pas utiliser la syntaxe : car elle ne fonctionne pas avec greasemonkey, or mon script est justement un script greasemonkey. (Ou alors c'est moi qui l'ai mal utilisé, mais d'après ce que j'ai lu sur gm, c'est un addEventListener qu'il faut utiliser). @SpaceFrog Ça donne la même chose qu'avec le code précédent, 17*17, c'est à dire la taille de la plus petite des images, et de fait, la plus rapide à charger. |
|
|
00
|
|
|
#7 | ||
|
Invité de passage
![]() Inscription : mai 2011 Messages : 4 ![]() |
Bon ben la nuit m'a porté conseil, j'ai trouvé la solution à mon problème. Il suffisait d'utiliser 'this' à la place de 'picture[j]' à l'intérieur de la fonction de l'addEventListener.
Ce qui donne plus clairement : Code :
.
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com