Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Płynna zmiana rozmiaru tła pod zdjęciem (animacja)
MisiekPolarny
post
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 9.06.2011

Ostrzeżenie: (0%)
-----


Witam,

Napisałem własną wersję galerii Lightbox, tylko że dużo prościej. Jednak brakuje mi tego efektu płynnego rozszerzania się pola, w którym potem pojawia się zdjęcie. U mnie przebiega to bez animacji i jest uzależnione tylko od prędkości wczytywania zdjęcia. Rozmiar obszaru pod zdjęciem dostosowuje się do rozmiaru załadowanego zdjęcia.

Jak zrobić taką animację jak w Lightboxie, żeby tło pod zdjęciem płynnie się rozszerzyło do rozmiarów zdjęcia, a dopiero potem pojawiło się zdjęcie? Macie jakieś wskazówki?

Korzystam z czystego Javascript bez dodatków, więc porady związane z JQuery raczej mi nie pomogą. Poza tym wolę spróbować samemu to zrobić, żeby moje dzieło było kompletne (IMG:style_emoticons/default/wink.gif)

Myślałem o zapętlonej zmianie rozmiaru bloku DIV, ale przebiega to tak szybko, że nie widać efektu. Czym można spowolnić wykonywanie pętli? Próbowałem setTimeout'em, ale coś mi nie wychodzi. Czy to w ogóle właściwa droga?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
melkorm
post
Post #2





Grupa: Zarejestrowani
Postów: 1 366
Pomógł: 261
Dołączył: 23.09.2008
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


Dajesz na zdjęcie funkcję onload w które będzie dopiero wrzucał zdjęcie (wtedy pojawi się od razu) ale przed samym wrzuceniem pobierasz szerokość i wysokość zdjęcia i pętlą for sobie rozciągasz tego div'a wzdłuż i wszerz i po zakończonych pętlach jako source obrazka z kanałem alpha wrzucasz obrazek i masz ładny efekt (IMG:style_emoticons/default/tongue.gif)

pseudocod:
Kod
// tutaj wrzucasz do div'a loadera
img.onload = function()
{
// tutaj pobierasz szerokość wysokość obrazka
// animacja, możesz też mieć div'a bez ustawionych parametrów szerokości / wysokości i wrzucić tam obrazek w tło - będzie ładniejszy efekt
// wrzucenie obrazka do div'a (chyba że uprzednio był w tle)
}


Ten post edytował melkorm 9.06.2011, 17:17:03
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 02:28