/ / Concrete5, Imageflow i Fancybox JQuery - javascript, jquery, fancybox, concrete5

Concrete5, Imageflow i Fancybox JQuery - javascript, jquery, fancybox, concrete5

Wiem, że post wydaje się długi, ale jestem pewien, że istnieje bardzo proste rozwiązanie. Proszę przeczytać.

Ok, więc mam tutaj mały php, który pobiera obrazy:

<div id="<?php echo $smallThumbs; ?>" class="imageflow">
<?php

foreach($images as $imgInfo) {
$f = File::getByID($imgInfo["fID"]);

echo "<img src="/images/";
echo $f->getRelativePath();
echo "" longdesc="";
echo $f->getRelativePath();
echo "" ";
echo "alt="";
echo $imgInfo["description"];
echo ""/>";
;}; ?>

</div>

A to jest kod fancybox: http://www.pastie.org/2096958

Wkleiłem go na pastie, ponieważ było za długie i niczego nie rozumiem.

Zmieniłem ostatni bit od

$ ("login-popup-link"). fancybox

do

$ (". imageflow"). fancybox

aby uzyskać jakiekolwiek wyniki. Teraz pokazuje popup, ale mówi

"Nie można załadować żądanej treści. Spróbuj ponownie później."

Kolejne miejsce, w którym używam tej samej funkcji, działa płynnie z tym kodem dla obrazu bazowego, który po kliknięciu pokazuje okienko

<a class="login-popup-link" href="#login-popup"><img src="/images/images/vid.png" width="280" height="216"/></a>

Proszę pomóż! Próbowałem też dodawać znaczniki "a" w kodzie php do góry, ale to powoduje, że cała galeria znika.

Z góry dziękuję!

Odpowiedzi:

0 dla odpowiedzi № 1

Fancybox działa na samych znacznikach <a>, ale w twoim kodzie kierujesz go do <div> otaczającego twoje znaczniki "a. Co musisz zrobić, to zmienić javascript z tego:

$(".imageflow").fancybox({

do tego:

$(".imageflow a").fancybox({

Zauważ, że jeśli chcesz mieć wiele obrazówzgrupowane razem, aby można było klikać strzałki w fantazyjnym pudełku, aby je przeglądać, trzeba nadać każdemu znacznikowi "a" ten sam atrybut "rel", na przykład:

echo "<img src="/images/";
echo $f->getRelativePath();
echo "" longdesc="";
echo $f->getRelativePath();
echo "" rel="gallery1"";
echo "alt="";
echo $imgInfo["description"];
echo ""/>";