Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 0 Dołączył: 14.11.2009 Ostrzeżenie: (0%)
|
Witam. Nurtuje mnie pewien problem. Chciałbym zrobić funkcję, która przesuwa obrazek w dół i w prawo o 3 piksele w pewnych odstępach czasu. Z tym, że chciałbym, żeby te odstępy czasu zwiększały się z każdym przesunięciem. Oto kod, który stworzyłem:
Jak widać, funkcja oneStep() przesuwa obrazek, ale przedtem funkcja moveImage() każe jej odczekać jedną sekundę. Następnie oneStep() znów przesuwa obrazek i tym razem ma odczekać 2 sekundy, następnie 3, 4 itd. aż do 15 sekund. Niestety w rzeczywistości tak się nie dzieje. Obrazek cały czas przesuwa się co 1 sekundę aż przesunie się 14 razy. Specjalnie ustawiłem długie opóźnienie, żeby zniwelować błędy spowodowane szybkością czytania kodu przez przeglądarkę. Ale niestety różnica w czasie między kolejnymi przesunięciami nadal jest niezauważalna. Co robię źle? Ten post edytował matewka 14.10.2010, 13:50:47 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
Wszystkie timeouty startują jednocześnie, w tym problem.
Pętlą raczej tego nie zrobisz:
|
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 0 Dołączył: 14.11.2009 Ostrzeżenie: (0%)
|
Rzeczywiście działa! Wielkie dzięki. Cały dzień się nad tym głowiłem. Też już myślałem o podobnym rozwiązaniu, ale sama koncepcja była dla mnie, początkującego javowca, zbyt skomplikowana, więc nawet nie zaczynałem.
|
|
|
|
![]() ![]() |
|
Aktualny czas: 23.12.2025 - 15:52 |