11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

J'insère du code html contenant des images dans une autre page en utilisant $(<selecteur>).html(<code à insérer>).
L'insertion a bien lieu, mais les image ne sont pas affichées. J'ai le cadre de l'image et une icone de fichier avec une croix rouge, comme si l'image n'avait pas été trouvé.
Si je fais un clic droit et que je selectionne "afficher l'image", elle apparait. (Comme si elle n'avait pas été téléchargée avant, et que cette action avait provoqué le téléchargement).

En mode IE8 ou IE7 (dans IE9) les images sont correctement affichées.

Auriez-vous une idée du problème?

Merci.
Bonjour,

jayNetdevices a écrit :
Auriez-vous une idée du problème?

Aucune. Par contre j'ai une idée de comment j'essaierais de déterminer le problème. Smiley cligne

1. Tu as vérifié que le DOM généré est correct?

2. Tu as vérifié si le navigateur fait une requête HTTP pour récupérer l'image (en utilisant un outil tels que les Developer Tools d'IE s'ils le permettent, ou un proxy HTTP comme Charles Proxy)?
Modifié par fvsch (04 Nov 2011 - 11:14)
a écrit :
1. Tu as vérifié que le DOM généré est correct?

C'est à dire?
Le code inséré passe le validateur W3C. (en XHTML 1.0 Strict).

a écrit :
2. Tu as vérifié si le navigateur fait une requête HTTP pour récupérer l'image (en utilisant un outil tels que les Developer Tools d'IE s'ils le permettent, ou un proxy HTTP comme Charles Proxy)?

En effet dans le Developer Tools d'IE, on voit clairement que l'image n'est pas chargé (n'apparait pas dans la liste des requêtes jusqu'à ce que je fasse clic droit > afficher l'image).

Jai contourner le problème en utilisant la méthode $(<sélecteur>).load(<arguments>) de JQuery qui fait la requête et insère le contenu directement.

Il doit y avoir des subtilités pour forcer l'évaluation/le chargement des éléments tels que les images ou les scripts.

Malheureusement je n'ai pas le temps d'approfondir la question.

Merci de ton aide. Smiley cligne
Modifié par jayNetdevices (04 Nov 2011 - 19:32)