Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne][AJAX][JavaScript]animacja divów podczas przesuwania strony
Forum PHP.pl > Forum > Przedszkole
interu58
Witam,

Robię stronę z rodzaju one page site, gdzie druga zakładka jest podzielona na dwie kolumny i chciałbym uzyskać efekt, w którym kolumna lewa wysuwa się z lewego boku strony a prawa z prawego podczas przesunięcia strony do diva w którym się znajdują.

Coś takiego jak tutaj w części "badania jakościowe" http://strategaresearch.pl/.
Niestety na podstawie kodu strony nie mogę się do końca połapać jak to zostało zrobione.
Proszę o jakąś podpowiedź za pomocą czego mogę uzyskać taki/podobny efekt.
markuz
Najpierw event $(window).scroll(); w jQuery. Potem pobierasz $(window).scrollTop(); a następnie porównujesz i tworzysz animacje (animate).
golabow
Napisałem taki skrypt, zobacz:
SKRYPT JS

Edit: Zapomniałem o tym że ma działać na scroll, przerobione
interu58
Dzięki wielkie. Skrypt działa super.
Jeszcze tylko jedna kwestia, o której w sumie nie pomyślałem. Z suwakiem działa ale jak wyczytuje diva za pomocą menu, to już kolumny się nie wyświetlają. Nie ogarniam za bardzo js i moje przerabianie, żeby działało w obu opcjach nic nie dały. Będę wdzięczny za pomoc.
golabow
Jeżeli dobrze rozumiem twój problem to jest rozwiązanie:
skrypt JS
interu58
Dzięki.
W sumie tak to zmieniałem, nie wstawiłem tylko znaku "=".
Generalnie niby działa i nie działa smile.gif
Działa mi przy rozdzielczości 1280x1024, a nie działa przy 1366x768 - kolumny nie wyświetlają się poprzez kliknięcie w menu i przewinięcie strony, a dopiero po przesunięciu suwaka tak, że kolumny do połowy są już poza zasięgiem strony.
Przy rozdzielczości na której to działa, pojawienie się kolumn następuje dopiero jak strona przewinie się do wybranego diva a chyba lepiej by było jakby to następowało jeszcze w trakcie przewijania, żeby moment zatrzymania na konkretnym divie był jednocześnie momentem zatrzymania animacji, albo żeby chociaż następowało to niedługo po.

Nie oczekuje gotowego skryptu, ale może ktoś mnie naprowadzi na to od czego to może zależeć i jakoś znajdę rozwiązanie smile.gif
golabow
Jeżeli chodzi o rozmiar okna, testowałem i wszystko u mnie dobrze chodzi, nie wiem dlaczego u Ciebie są takie problemy. Zmieniłem prędkość animacji ze 'slow' na 'medium' więc może to pomoże gdy elementy będą się szybciej pojawiać.

Natomiast jeśli chcesz uzyskać efekt wcześniejszego pojawienia się elementów wystarczy zwiększyć "moment zdarzenia" o dodatkową wartość.

Przerobiony skrypt: skrypt JS

PS. Jeżeli którymś postem pomogłem Ci wystarczy że wciśniesz guzik "pomógł", po to jest ten przycisk.
interu58
Pokombinowałem i już działa. dzięki wielkie.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.