2010-07-26 3 views
0

je donne les résultats suivants:changement de Chrome hauteur lors du chargement des images - comment obtenir la hauteur réelle avec jQuery sur la charge

var offset = {top: target.offset().top + target.height() + 3, 
        left: target.offset().left}; 
target.offset(offset); 

cela se produit sur $(document).ready(..)

Cependant, en chrome, l'objet cible ne se situe pas avec la hauteur appropriée. Lorsque j'ai placé un alert(..) pour afficher la hauteur réelle, j'ai vu la raison - target.offset().top renvoie moins que souhaité car à ce moment une image n'est toujours pas chargée (l'alerte bloque le chargement de la page et cela devient visible).

J'ai corrigé le problème en spécifiant un height explicite du <div> autour de l'image, mais y a-t-il un meilleur moyen?

+0

Donner des attributs de largeur (et de hauteur) à l'image? – user123444555621

Répondre

2

Au lieu de $(document).ready(..), utilisez $(window).load(...) pour cette :)

La fenêtre événement onload ne se produit pas avant après chargement des images finies, donc c'est ce que vous voulez dans ces cas.

Questions connexes