Fancybox - Bilder der Gallerie werden automatisch über ajax nachgeladen

rennwolle17

Grünschnabel
Hallo,

ich arbeiten gerade mit Fancybox soweit klappt auch alles. Nun stehe ich aber vor einem "kleinen Problem".

In meiner Galerie werden per AJAX immer neue Bilder angefügt, wie kann ich Fancybox mitteilen das neue Bilder hinzugekommen sind und er diese gleich mit einbezieht wenn es einmal geöffnet ist. Wenn ich Fancybox einmal schließe und wieder neuöffne erkennt er die neuen Bilder und ich kann diese mit durchklickern, aber wie bekomme ich das ganze hin ohne Fancybox erst zuschließen und neu zu öffnen?

Gibt es ein Update-Funktion die die neuen Anzahl an Bildern an Fancybox weiterleitet?

Besten Dank!

Chris
 
Ich hab gerade auch mal ein Beispiel zusammengebaut

http://www.xeboo.org/fancy.php

Es werden alle 5sek zur Galerie Bilder hinzugefügt, wie kann ich Fancybox beibringen das er bei jedem Klick auf weiter sein hinterlegtes Images Array updatet und somit die neuhinzugekommen Bilder mit anzeigt ohne das Fancybox erst geschlossen werden muss und dann wieder geöffnet wird?

Besten Dank :)
 
Ich sehe da kein Array von Bildern in deinem Quelltext. Es werden immer wieder dieselben sieben Bilder angezeigt, weil dein Counter bei 8 wieder auf 1 gesetzt wird. Jetzt kann es natürlich sein, dass das PHP-Skript das genauso aufsetzt, da kenne ich den Quelltext nicht. Wenn du den noch posten würdest, kämen wir noch ein Stück weiter.
Die andere Frage wäre, woher denn deine Galerie ihre Daten hat. Hast du alle Bilder als Datenbankeinträge abgelegt? Prüfst du per PHP-Skript einen Ordner auf dem Server ab? Oder wie fügst du neue Bilder in deine Galerie ein?

Gruß
 
Hallo Erik,

genau er fängt nach 8 Bildern immer wieder von vorn an - um das eine quasi Endlosschleife bei den Bildern stattfindet was für ein Testscript auch vollkommen reichen sollte :) Wo die Fotos hergeholt werden spielt glaub in meinem Problem auch keine Rolle, ob aus der Datenbank, Dateisystem oder oder oder ....

Ich versuche das Problem nochmal zu erklären:

Rufe ich die Seite auf und klicke auf eines der beiden Fotos die am Anfang verfügbar sind öffnet sich die Fancybox mit der ich nun die Möglichkeit habe die weiteren Bilder (die zum Zeitpunkt des öffnen von Fancybox verfügbar sind) mit "next" und "prev" zu besichtigen.

Ich möchte nun das bei jedem Klick auf Next überprüft wird ob ein neues Foto hinzugekommen ist und es mir dieses auch in der Fancybox anzeigt, auch wenn es zum Zeitpunkt des öffnen von Fancy noch nicht angezeigt wurde.

Besten Dank,

P.S. wie ich next und prev abfange habe ich schon herausgefunden und werde es im Beispiel mit einpflegen
 
So, ich hab nun noch die Events für Next und Prev mit übernommen - er macht nun jeweils über console.log() ne ausgabe wenn die Events eintreten
 
Ich kenne FancyBox leider sonst nicht und habe in den Options- bzw. API-Beschreibungen jetzt erstmal nichts entdecken können, was FancyBox dazu veranlasst, die Liste der Galerie-Elemente zu aktualisieren.
Frag eventuell mal direkt im Support-Forum oder so nach. Da wird da wohl eher jemand einen Tipp geben können, da es doch schon recht speziell ist.

Gruß
 
Da bekommt man folgende Antwort :)

----------------------------------------------------------

Hi,

fancyBox was not designed to handle dynamic update of the gallery items.

This will change in the future releases.

-------------------------------------------------------


Und mit dieser Antwort möchte ich nicht leben ... geschweige warten :)
 
Hehe, verstehe ich.
Dann bleibt dir wohl nur, selbst ein Galerie-Skript zu schreiben. Grundsätzlich kannst du mit jQuery und seinen Erweiterungen sehr viel erreichen. Mir ist klar, dass FancyBox natürlich schön einfach und fertig ist, aber wer etwas spezielles will, muss auch was dafür tun. Vielleicht hat jemand anderes noch einen Vorschlag für eine FancyBox-Alternative, die dieses Feature bereits beinhaltet.

Gruß
 
Hmm ... das Rad neu erfinden ist auch doof :D

ich werde nun versuchen Fancybox anzupassen ... meine aktuelle Idee ist eine zweite open Funktion die im Prinzip das selbe macht wie die bereits bestehende, nur das diese nicht die aktuelle Position verliert bei der man sich befunden hat.

Also wenn ich bei Bild 5 bin und auf next klicke nicht beim ersten Bild lande sondern beim 6.

Ich hab mein Fancybox nun so angepasst (zum testen) das wenn die Fenstergröße geändert wird er die open Funktion aufruft und somit neue Bilder auch findet.

Aktuell habe ich damit nur das Problem ... das ich immer wieder bei Bild 1 anfange.
 
Es funktioniert! :D

jetzt muss ich es nur noch versuchen anzupassen das die Animationen beibehalten werden, um das das ganze ein bisschen edler aussieht.
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück