Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 16.01.2012 Ostrzeżenie: (0%)
|
Witam,
uczę się Javascriptu i od kilku godzin próbuję zrobić sobie prostą animację w stylu przesuwania elementów. Załóżmy że mam element o id="test". W skrypcie mam coś takiego:
Zadaniem skryptu jest przesunięcie elementu z jednego krańca ekranu do drugiego. Funkcja działa, ale nie tak jak bym tego oczekiwał. Chciałbym aby element blokowy przesuwał się powoli od lewej strony do prawej. Do tego użyłem funkcji setTimeout. Niestety pod operą i IE po wciśnięciu buttona który odpowiada za uruchomienie funkcji przesunięcia, po upłycięciu 100ms element przesuwany jest od razu do prawej strony. Gdzie popełniłem błąd? Ewentualnie w jaki inny sposób przesuwać elementy w czasie? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 16.01.2012 Ostrzeżenie: (0%)
|
Nie rozumiem. W pętli raz po razie przesuwam element o 10px, a następnie odczekuję 100ms?
Chyba, że się mylę. Z tego wychodzi, że setTimeout nie zatrzymuje pętli na 100ms tylko buforuje punkty, które bardzo szybko się zapełniają do screen.width. W takim razie w jaki sposób odczekać zadaną liczbę milisekund? |
|
|
|
calvx [Javascript] Przesuwanie elementu - setTimeout 16.01.2012, 12:53:14
nospor Odpalsz w petli x dziesiat razy setTimeout to nic ... 16.01.2012, 12:55:24
nospor CytatZ tego wychodzi, że setTimeout nie zatrzymuje... 16.01.2012, 13:13:22 ![]() ![]() |
|
Aktualny czas: 28.12.2025 - 12:19 |