Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [js] problem z setTimeout
Qcumbeer
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 21.03.2010

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


Siema, chcialem stworzyc prosty skrypt ktory odliczalby do weekendu (IMG:style_emoticons/default/winksmiley.jpg) Niestety nie działa tak jak bym tego chciał -.- Wydaje mi sie ze problem jest z funkcja setTimeout ktora wg. mnie powinna wlaczac funkcje czas od nowa (czyli w sumie cały skrypt) po upływie 1s.
Tutaj kod:

  1.  
  2. <script LANGUAGE="JavaScript">
  3. <!--
  4.  
  5. function czas(){
  6.  
  7. now = new Date()
  8. var godz = now.getHours();
  9. var min = now.getMinutes();
  10. var sec = now.getSeconds();
  11. document.write("<center><br><br>")
  12.  
  13. if (now.getDay() == 5)
  14. document.write("NIE<br><br>Pozostało:<br>" + Math.floor(23 - godz) + " godzin " + Math.floor(59 - min) + " minut " + Math.floor(59 - sec) + " sekund")
  15.  
  16. if (now.getDay() == 6)
  17. document.write("<b>TAK!</b>")
  18.  
  19. if (now.getDay() == 0)
  20. document.write("<b>TAK!</b>")
  21.  
  22. if (now.getDay() == 1)
  23. document.write("<b>NIE</b><br><br>Pozostało:<br>" + Math.floor(119 - godz) + " godzin " + Math.floor(59 - min) + " minut " + Math.floor(59 - sec) + " sekund")
  24.  
  25. if (now.getDay() == 2)
  26. document.write("<b>NIE</b><br><br>Pozostało:<br>" + Math.floor(95 - godz) + " godzin " + Math.floor(59 - min) + " minut " + Math.floor(59 - sec) + " sekund")
  27.  
  28. if (now.getDay() == 3)
  29. document.write("<b>NIE</b><br><br>Pozostało:<br>" + Math.floor(71 - godz) + " godzin " + Math.floor(59 - min) + " minut " + Math.floor(59 - sec) + " sekund")
  30.  
  31. if (now.getDay() == 4)
  32. document.write("<b>NIE</b><br><br>Pozostało:<br>" + Math.floor(47 - godz) + " godzin " + Math.floor(59 - min) + " minut " + Math.floor(59 - sec) + " sekund ")
  33.  
  34. document.write("</center>")
  35. setTimeout('czas()',1000);
  36.  
  37. }
  38.  
  39. onload=function(){czas();}
  40.  
  41. //-->
  42.  
  43. </body>
  44. </html


Mam nadzieje ze ktos mi powie co jest nie tak (IMG:style_emoticons/default/smile.gif) (Dzisiaj jest niedziela i skrypt wyswietla "TAK", problem jest gdy powinien odliczac wiec przestawcie sobie date w windowsie na np. wtorek i zobaczycie o co kaman).
Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Qcumbeer
post
Post #2





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 21.03.2010

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


ok, dzieki wielkie yahreck za podpowiedz z tym okienkiem tekstowym (IMG:style_emoticons/default/smile.gif) ) w diva nie chcialo mi sie bawic. dla zainteresowanych pokombinowalem troche zeby to nie wygladalo tak brzydko jak okienko i skrypt teraz wyglada tak:


  1. input{border:none;font: 12pt/12pt Verdana, serif;}
  2. input:disabled{background-color:#ffffff;}
  3. </style>
  4.  
  5. <script LANGUAGE="JavaScript">
  6. <!--
  7.  
  8. function czas(){
  9.  
  10. now = new Date()
  11. var godz = now.getHours();
  12. var min = now.getMinutes();
  13. var sec = now.getSeconds();
  14.  
  15. if (now.getDay() == 5){
  16. if (godz < 17){
  17. document.getElementById('wynik').value="pozostało: " + Math.floor(16 - godz) + "h " + Math.floor(59 - min) + "m " + Math.floor(59 - sec) + "s";
  18. document.getElementById('lol').value="NIE";
  19. }
  20. else{
  21. document.getElementById('wynik').value="";
  22. document.getElementById('lol').value="TAK!";
  23. document.getElementById('weekend').value="Można świętować!";
  24. }
  25. }
  26.  
  27. if (now.getDay() == 6){
  28. document.getElementById('wynik').value="";
  29. document.getElementById('lol').value="TAK!";
  30. document.getElementById('weekend').value="Można świętować!";
  31. }
  32.  
  33. if (now.getDay() == 0){
  34. document.getElementById('wynik').value="";
  35. document.getElementById('lol').value="TAK!";
  36. document.getElementById('weekend').value="Można świętować!";
  37. }
  38.  
  39. if (now.getDay() == 1){
  40. document.getElementById('wynik').value="pozostało: " + Math.floor(112 - godz) + "h " + Math.floor(59 - min) + "m " + Math.floor(59 - sec) + "s";
  41. document.getElementById('lol').value="NIE";
  42. }
  43.  
  44. if (now.getDay() == 2){
  45. document.getElementById('wynik').value="pozostało: " + Math.floor(88 - godz) + "h " + Math.floor(59 - min) + "m " + Math.floor(59 - sec) + "s";
  46. document.getElementById('lol').value="NIE";
  47. }
  48.  
  49. if (now.getDay() == 3){
  50. document.getElementById('wynik').value="pozostało: " + Math.floor(64 - godz) + "h " + Math.floor(59 - min) + "m " + Math.floor(59 - sec) + "s";
  51. document.getElementById('lol').value="NIE";
  52. }
  53.  
  54. if (now.getDay() == 4){
  55. document.getElementById('wynik').value="pozostało: " + Math.floor(40 - godz) + "h " + Math.floor(59 - min) + "m " + Math.floor(59 - sec) + "s";
  56. document.getElementById('lol').value="NIE";
  57. }
  58.  
  59. setTimeout('czas()',1000);
  60.  
  61. }
  62.  
  63. //-->
  64. </SCRIPT>
  65.  
  66. </head>
  67.  
  68. <body onload="czas();">
  69. <br>
  70. <input type="text" id="lol" style="text-align:center;font-size:70" size="3" disabled><br><br>
  71. <input type="text" id="wynik" style="font-size:small;text-align:center;" size="21" disabled><br>
  72. <input type="text" id="weekend" style="font-size:small;text-align:center;" size="21" disabled>
  73. </form>
  74.  
  75. </body>
  76. </html>



i wszystko działa pieknie jak nalezy (IMG:style_emoticons/default/smile.gif)
Kopiowanie jak najbardziej wskazane (IMG:style_emoticons/default/biggrin.gif)

peace

Ten post edytował Qcumbeer 25.03.2010, 20:57:51
Go to the top of the page
+Quote Post

Posty w temacie


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: 5.10.2025 - 08:26