a mon avis il faudrait précharger les images au chargement de la page comme ça le problème est résolu
a mon avis il faudrait précharger les images au chargement de la page comme ça le problème est résolu
Oui un preloader qui affecte le onload a chaque image et stocke les dimensions ..
Bah lis le message jusqu'au bout ! (y compris le PS)Je ne comprends pas ce que tu ne comprends pas
Rassure moi, tu fais exprès, t'es pas comme ça dans la vraie vie et au boulot
Bon de toutes façons le pb est résolu, je traite les données dans le Onload comme le recommande NoSmoking plus haut et ça roule (même si la chronologie du traitement des évènements m'échappe toujours...)
Merci à vous
Inutile d'être méprisant, dois-je te rappeler que je réponds à tes questions juste par gentillesse ? Dans la vraie vie et au boulot, j'ai la chance d'avoir affaire à des gens plus respectueux, surtout quand ils demandent de l'aide
J'ai lu ton message jusqu'au bout et tu n'es pas clair dans tes explications. Vu que le résultat de l'ordre des alertes est normal, tu as dû comprendre de travers.
http://jsfiddle.net/Rm735/1/
---> Message 1: On rentre dans la fonction click
---> Message 2: La taille de l'image n'a pas encore été récupérée: undefined*undefined
---> Message 3: On connait maintenant les dimensions: 479x535
A noter que certains navigateurs superposent les messages d'alertes plutôt que les envoyer dans l'ordre. Ca n'empêche que l'ordre est bon.
Je pense que c'est surtout parce qu'il n'a pas saisi les mécanismes et leur chronologie...
Bah... rien de très extraordinaire en fait : ils sont exécutés dans l'ordre où ils sont déclenchés !même si la chronologie du traitement des évènements m'échappe toujours...
Bref, lorsque tu poses des gestionnaires d'événements, tu leur affecte une fonction de rappel (callback) qui attend que l'événement survienne pour être exécutée.
Dans ton exemple, si tu as plusieurs images avec chacune un événement onload associé, le code correspondant à ces gestionnaires sera exécuté à chaque fois qu'une image aura fini de se charger (et donc pas forcément dans l'ordre où les images sont insérées dans le code ni dans l'ordre de déclaration des gestionnaires).
avec une image en haute resolution et la on s'apercois que l'ordre n'est plus le même et montre bien que le onload est indépendant de la fonction
http://jsfiddle.net/r8uqj/
J'ai toujours le même ordre sur tous les navigateurs que je teste... Le onload est bien indépendant de la fonction mais l'instruction synchrone s'exécutera toujours plus vite que l'asynchrone, sauf dans quelques très rares cas dont j'ai parlé plus haut.
Merci à tous,
désolé Sylvain je n'ai pas voulu être désagréable et surtout pas méprisant, c'était juste un peu d'humour.
Certaines notions de base m'échappent, c'est pourquoi je recherche un "cours" sur le fonctionnement de js, et je ne trouve que des cours sur l'utilisation.
En tous cas merci à tous de votre aide et encore désolé de t'avoir froissé Sylvain.
Amicalement
Philippe
autant pour moi---> Message 1: On rentre dans la fonction click
---> Message 2: La taille de l'image n'a pas encore été récupérée: undefined*undefined
---> Message 3: On connait maintenant les dimensions: 479x535
ca viendra avec le tempMerci à tous,
désolé Sylvain je n'ai pas voulu être désagréable et surtout pas méprisant, c'était juste un peu d'humour.
Certaines notions de base m'échappent, c'est pourquoi je recherche un "cours" sur le fonctionnement de js, et je ne trouve que des cours sur l'utilisation.
En tous cas merci à tous de votre aide et encore désolé de t'avoir froissé Sylvain.
"au temps" pour moi et pas "autant" (validé Académie Française, ça vaut bien le W3C)
Ca viendra avec le temp"s" ...
![]()
(j'peux pas m'empècher, c'est mon côté potache les gars...)
A+
Philippe
Mince je pensais que c'était OTAN, Oubli Temporaire Attribué aux Neurones."au temps" pour moi et pas "autant" (validé Académie Française, ça vaut bien le W3C)![]()
Autant ou au temps, les deux sont valables car on a perdu l'origine de l'expression.
http://www.langue-fr.net/spip.php?article14
on en apprend tous les jour.
( mais combien on en perd tous les jours ? )
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager