2009-11-04 7 views
0

Je suis un problème avec l'image en utilisant IE6 échange jQuery (mais en supposant qu'il importe quel javascript déclenchera ce numéro)IE6 javascript l'image échange

Lors du réglage de $(). Attr ('src', 'image.png') où l'image actuelle pour le sélecteur est radicalement différente dans les dimensions de l'image image.png, IE6 presse la nouvelle image dans le cadre de l'ancienne image sans redimensionner du tout. J'ai essayé plusieurs façons de contourner cela, comme remplacer avec l'image avec un nouvel élément d'image déclenché par un événement de chargement lors du chargement de la nouvelle image, mais rien ne semble être fiable, divers résultats ont été l'image entassés dans une très petite boîte, ou la nouvelle image ne charge tout simplement pas du tout.

Toute assistance très appréciée.

Répondre

0

Peut-être que vous devez déclencher une refusion. Essayez d'ajouter et de retirer immédiatement un DIV après le chargement de la nouvelle image. Cependant, il doit y avoir une meilleure méthode pour déclencher une refusion. Je vais regarder dedans.


Bien sûr, je suppose que vous n'avez pas défini la taille de l'image explicitement avec CSS? Parce que si le img a style = "width: 200px; height: 200px;" il restera un carré de 200px même si vous chargez un rendu en taille réelle de l'Empire State Building.


A propos d'autres façons de déclencher une refusion, look here. Faites-moi savoir si j'ai deviné juste.

+1

Une meilleure méthode pour déclencher une refusion est de définir l'attribut 'className'; vous n'avez même pas à le modifier. 'element.className = element.className' le fera :-) (Notez que cela peut être fait sur un élément conteneur, plutôt que sur l'image.) – NickFitz

+0

+1 parce que votre réponse à ma réponse est plus froide que ma réponse à sa question: D –