2010-09-09 3 views
1

J'utilise le plugin jQuery qtip. Je veux que le contenu du qtip soit une image, chargée dynamiquement.jQuery qtip - chargement d'une image dans le qtip via ajax

L'URL que j'utilise fonctionne. Si je vais à l'url, je vois une image. Cependant, le qtip montre quelque chose de ... bizarre. Voici le résultat:

alt text

Toutes les idées pourquoi cela se passerait-il?


Modifier

Ceci est toute-tête de réponse (via Chrome Inspector):

Access-Control-Allow-Credentials:true 
Access-Control-Allow-Methods:POST, GET, OPTIONS 
Access-Control-Allow-Origin:* 
Access-Control-Max-Age:1728000 
Cache-Control:no-store, no-cache, must-revalidate, post-check=0, pre-check=0 
Connection:keep-alive 
Content-Length:5690 
Content-Type:image/gif; charset=binary 
Date:Thu, 09 Sep 2010 17:35:48 GMT 
Expires:Thu, 19 Nov 1981 08:52:00 GMT 
Keep-Alive:timeout=2 
Last-Modified:Thu, 09 Sep 2010 17:35:48 GMT 
Pragma:no-cache 
Server:nginx/0.8.31 
X-Powered-By:PHP/5.2.11 
+0

Est-il possible que la page que vous chargez n'utilise pas l'encodage utf-8? –

+0

La page est juste une image, pas html avec une image. – hookedonwinter

+0

Juste pour le plaisir: pouvez-vous vérifier le type de contenu que le serveur renvoie pour l'image? – Tomalak

Répondre

3

Vous devez probablement pointer le plugin Qtip à une URL qui renverra un fragment html contenant un lien vers l'image et pas directement vers l'image. Le fragment pourrait ressembler à ceci:

<div> 
    <img src="/images/someimage.jpg" alt="" /> 
</div> 

Je ne pense pas que qTip supporte la recherche directe d'images. Pensez-y: une requête AJAX est envoyée et si le serveur retourne un tableau binaire représentant l'image en utilisant javascript, ce tableau binaire ne peut pas être affiché (sauf si vous utilisez le data uri scheme qui n'est pas très commun).

+0

Je peux certainement le faire. Je peux charger l'image via ajax et la passer ensuite à qtip. Mais, j'aimerais utiliser réellement l'interrogation ajax de qtip, si possible. Et l'image provient d'une API, donc je ne peux pas changer cette page non plus. Mais, ce sera ma solution si rien ne se rapproche du problème. – hookedonwinter

+0

Pourriez-vous expliquer comment faites-vous cela en utilisant AJAX simple? –

+0

Actuellement, je suis juste en utilisant ajax appel qtip - contenu: { texte: ' Chargement utilisateur Info', url: tip_url }, – hookedonwinter

Questions connexes