8
votes

réponse AJAX devait être attribuée à un div

Je suis implémentant une galerie d'images à l'aide d'un appel AJAX.

L'appel passe une valeur et obtient un code HTML comme réponse. J'ai vérifié cette réponse et c'est correct. P>

Et si je mets ce code dans une Div statique, la galerie ne fonctionne pas sans problèmes. P>

mais si j'injecte le code avec Ajax, Lorsque je clique sur une image, il s'ouvre dans la fenêtre comme une image normale: la pop-up de la galerie ne fonctionne pas. P>

Quelle pourrait être la cause de ce problème? P>

Le Le code est comme suit p>

p>

 <div class="portfolio-adaptive adaptive-three" id="dv_gallery"></div>


10 commentaires

Data: {Type: Produit, Utiliser: 'Galerie'}, ... est le produit un nom de variable ou devrait-il être une chaîne ... I.e. Données: {Type: 'Produit', utilisation: "Galerie"},


Le produit est une variable qui contient une chaîne


Vous utilisez le langage côté serveur?


Votre galerie DIV est intérieure partielle?


Ajoutez le code d'ouverture image dans popup


Votre problème est l'URL. Vous ne pouvez utiliser que des chemins relatifs, exemple URL: 'ajax.php', à la fois sur la page Web et la page Ajax "page" doit figurer sur le même serveur.


J'utilise le langage côté serveur - php


Mes amis, je reçois la réponse au besoin. Mais lorsque j'insère le code à l'intérieur d'une DIV, les vignettes d'image sont correctement affichées. Le problème est quand j'essaie de cliquer sur l'image :)


Pouvez-vous fournir le nom du logiciel de la galerie ou si c'est le vôtre, comment luttez-vous des événements à la galerie? De plus, un extrait de la réponse HTML serait utile.


$ ('. Swipebox'). Cliquez sur (Fonction () {$ ("Galerie-Fix"). Fadein (0);}); $ (". Swipebox"). Swipebox ({USECSS: True, // Faux forcera l'utilisation de JQuery pour Animations Hidebarsdelay: 3000 // 0 pour toujours afficher la barre de légende et d'action}); $ (". Article large-galerie"). Swipebox ({USECSS: true, // faux forcera l'utilisation de jQuery pour Animations Hidebarsdelay: 3000 // 0 pour toujours afficher la barre de légende et d'action});


4 Réponses :


6
votes

Sauf si la galerie (que vous ne spécifiez pas) est complètement CSS basée sur CSS, vous devez presque certainement appeler une sorte de code d'initialisation.

Ceci est généralement pris en charge par le code de la galerie lorsqu'il charge: p >

   $("#dv_gallery").html(data);


0 commentaires

2
votes

Avez-vous essayé d'utiliser la fonction HTML () de jQuery? XXX


3 commentaires

Et quel est le problème avec append ?


html remplacera tout le contenu précédent, annexe l'ajoutera


Oui, j'ai essayé cela. Mais j'ai toujours le même problème. Même j'ai essayé document.getelementyid ("dv_gallery"). Innerhtml



0
votes

$ ("# dv_gallery"). HTML (données);
Le code ci-dessus fonctionne pour vous


3 commentaires

Si vous obtiendrez des données de données après Ajax Réponse, vous mettrez votre HTML à l'aide de la fonction HTML avec l'utilisation de DIV ID en utilisant jQuery


Je l'ai déjà utilisé et ça ne fonctionne pas pour moi. Je reçois les images affichées là-bas. Mais la fonction de la galerie ne fonctionne pas là.


Envoyez-moi votre code avec html je vais vous donner une solution



0
votes

Le problème est que le problème est le plus probable, bien que votre code n'apprécie pas le code Cliquez sur , il n'est pas reconnu car il est chargé après le fait. Rien à voir avec le code de la galerie.

Mettez simplement, essayez de changer de code de clic de par exemple xxx

à xxx p> Cela acheminera le clic à travers le corps et devrait ensuite tirer votre code de galerie.


0 commentaires