06
cze
08

Pauza w Javascript

Szukałem ostatnio ( jak się okazało, niepotrzebne ) pauzy w JS. Znalazłem więc podrzucam od razu kod, może w przyszłości się jednak przyda:

function pause( numberMillis )
{
var now = new Date();
var exitTime = now.getTime() + numberMillis;
while (true)
{
now = new Date();
if (now.getTime() > exitTime)
return;
}
}

Kod się sam wyjaśnia.


6 Odpowiedzi do “Pauza w Javascript”


  1. czerwiec 7, 2008 o 12:42 am

    Tylko że takie rozwiązanie jest na okrętkę – zastanawiam się jaki jest CPU usage podczas tego oczekiwania? ;)

  2. czerwiec 13, 2008 o 10:39 pm

    Na okrętkę – niewątpliwie. Ale jak używasz aby odczekać np 300ms to w zasadzie nie ma to znaczenia. Gorzej jak chcesz odczekać kilka sekund.

    Poza tym – nie używałem tego kodu, okazało się, że nie potrzebuję o czym pisałem w notce.

  3. czerwiec 16, 2008 o 1:00 pm

    Widzę, że już pauza Ci nie jest potrzebna, ale gdybyś chciał kiedyś zrobić pauzę, to lepiej jest to zrobić np. tak:

    <html>
    <head>
    </head>
    <body>
    <script type="text/javascript">
    var el = document.createTextNode("Imię ");
    document.body.appendChild(el);
    function dalej()
    {
    el = document.createTextNode("Nazwisko");
    document.body.appendChild(el);
    }
    setTimeout("dalej()", 10000);
    </script>
    </body>
    </html>

    Pauza którą podałeś “zżera” 100% czasu procesora.

  4. czerwiec 17, 2008 o 7:00 pm

    “Pauza którą podałeś “zżera” 100% czasu procesora.”
    Tylko co z tego skoro miało to trwać mniej niż 1s?

    Twoje rozwiązanie nie jest rozwiązaniem. Ja potrzebowałem pauzę w połowie wykonania funkcji, a z tego co kojarzę to za pomocą setTimeout nie wykonasz tego.

    pzdr.

  5. czerwiec 18, 2008 o 9:26 am

    Twoje rozwiązanie nie jest rozwiązaniem. Ja potrzebowałem pauzę w połowie wykonania funkcji, a z tego co kojarzę to za pomocą setTimeout nie wykonasz tego.

    Wykonasz. Wystarczy chwilę pomyśleć…

  6. czerwiec 29, 2008 o 4:27 pm

    Tak da się, nieco źle się chyba wyraziłem. Ale to będzie wywołanie funkcji pause(), która wywoła kolejną funkcję po określonym czasie. Niemniej dzięki za podrzucenie pomysłu choć może jest coś jeszcze lepszego :)


Dodaj komentarz




 

czerwiec 2008
P W Ś C P S N
« maj   lip »
 1
2345678
9101112131415
16171819202122
23242526272829
30  

a

Strony