Javascript: Více časovačů najednou

Odesláno v September 12, 2005 | Kategorie Javascript | 2 Comments

Kdysi hodně dávno jsem potřeboval použít na jedné stránce více nezávislých timerů. Abych to zkrátil, vzdal jsem to s tím, že to nejde a že tvůrce Javascriptu pamatoval pouze na možnost jediné instance mocného Timeru.

Teď jsem to potřeboval znovu a najednou to jde…

  1. <html>
  2. <head>
  3. <script type="text/javascript">
  4. var idx0; //globalni promenne – budou v nich objekty timeru
  5. var idx1;
  6. function gi(){
  7. alert('Hello');
  8. }
  9. function start(Id){
  10. window.clearTimeout(Id);
  11. Id = window.setTimeout("gi();",1000);
  12. return Id;
  13. }
  14. function stop(Id){
  15. Id = window.clearTimeout(Id);
  16. }
  17.  
  18. </script>
  19.  
  20. </head>
  21.  
  22. <body>
  23. <div class="all">
  24. <h1></h1>
  25. <p> <a onmousemove='idx0=start(idx0);' href="#">start timer1</a>
  26. <a onmousemove='stop(idx0);' href="#">stop timer1</a>
  27. </p>
  28. <p> <a onmousemove='idx1=start(idx1);' href="#">start timer2</a>
  29. <a onmousemove='stop(idx1);' href="#">stop timer2</a>
  30. </p>
  31. </div>
  32. </body>
  33. </html>

Po najetí myší na odkaz start timer1,2 se spustí odpovídající časovač. Přejetím myší na stop timer1,2 se odpovídající časovač stornuje bez spuštění akce. Pokud budeme pohybovat myší nad start timer, bude se spuštění akce odkládat na okamžik, kdy se myš zastaví nebo až odjede z odkazu.

Hlasujte pro tento článek:
  • Bookmarky.cz
  • Digg
  • del.icio.us
  • Google
  • Linkuj
  • Vybrali.sme
  • E-mail this story to a friend!
  • Facebook
  • LinkedIn

Komentáře

2 Responses to “Javascript: Více časovačů najednou”

  1. knezi on September 21st, 2011 13:59

    Inteligentní stránka a ještě inteligentnější článek. Co popisuješ je hezké, ale co takhle návod?

  2. admin on September 21st, 2011 15:32

    Inteligentní to moc nebylo bez kódu :-) – opraveno. Já myslím že to komentář ani moc nepotřebuje, nebo ano?

Váš komentář: