jQuery lista elementów w div'ie


(Codecalm86) #1

Mam div'a #gallery, w którym pojawia się zmienna liczba elementów (dokładniej obrazków), lista generowana jest z PHP. Chciałbym pobrać liste tych obrazków do tablicy i w pętli wykonac na każdym z nich określony efekt, dajmy na to fadeOut z różnym czasem znikania. Wykonalne? :lol:


(Grzelix) #2

Oczywiście że jest wykonalne.

Php generuje listę obrazów po stronie serwera, natomiast jquery działa po stronie klienta, czyli widzi już wszystkie wygenerowane obrazki.

Operując na DOM'ie możesz wykonać dowolną operację/metodą z biblioteki jQuery na stronie przesłanej z serwera.


(Codecalm86) #3

No tylko miałem nadzieję na jakąś konkretniejsza odpowiedź, co do wykonywania tej listy/tabeli.


(Grzelix) #4

odpowiedź jest tak konkretna jak pytanie. Nie podałeś żadnego kodu więc ja mam za Ciebie napisać wszystko?

bardziej konkretna odpowiedź(?)

$(#galllery img).each(function (){

$(this).fadegOut("slow");

});

(M@ster) #5

Akurat przy fadeOut jak i przy lwiej części metod jQuery nie ma potrzeby robienia each i wykonywania na poj. elemencie akcji, wystarczy na całym secie:

$('#galllery img').fadeOut('slow');

(Codecalm86) #6

Wykonanie efektu na wszystkich obrazkach jest banalne, chodziło mi o wykonanie na każdym z obrazków trochę innego efektu. Stąd potrzeba listy wszystkich elementów.

Fade jakoś nie chce działać, pewnei trzeba było by dopisać delay

var count = 0.1;

$('#slider').children('div').each(function () {

	count = count + 0.3;

	$(this).css('opacity', count);

});

(hoobert) #7
var count = 0.1;

$('#slider').children('div').each(function () {

   count = count + 0.3;

   $(this).css('opacity', count);

});

Nie wiem co tu chcesz osiągnąć. Pierwszy div będzie miał przezroczystość = 0.4, kolejny 0.7 a kolejne 1. Nie wiem również jak ma działać ta galeria, ale jak wszędzie ma być fadeOut tylko z różnym czasem zanikania, to dlaczego nie skorzystasz z funkcji random?

$(this).fadeOut(Math.floor((Math.random()*100)+1))