Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS] Odliczanie - problem
Forum PHP.pl > Forum > Przedszkole
Xcore
Witam!

Mam problem z kodem do odliczania. Mój kod:
Kod
<div id="costam"></div><BR><script type="text/javascript"><BR>function date_diff(d,o,t,x){return[x=~~(t=(d-o)/864e5),x=~~(t=(t-x)*24), x=~~(t=(t-x)*60),~~((t-x)*60)]}<BR>function R(t){t=date_diff(new Date(2008,02,14),new Date());document.getElementById('costam').innerHTML='Do bleee '+t[0]+" dni, "+t[1]+" godzin, "+t[2]+" minut, "+t[3]+" sekund";setTimeout('R()',1e3);}<BR>R()<BR></script>


No i 1 odliczanie działa. Ale jak wstawie drugie, to mi odlicza tylko to dolne odliczanie. To górne zmienia wartość dopiero po odświeżeniu strony a to dolne się rusza.

Moja strona: http://www.gptimer.yoyo.pl/Xcore/odliczanie.html

A i proszę jakby ktoś miał kod co by nie miał tego błędu i żadnego innego i żeby odliczał mi do jakiejś konkretnej godziny a nie do 0:00:00 to jakby ktoś mogłby go podać to byłbym wdzięczny winksmiley.jpg. Z góry dziękuje smile.gif
qrees
Cytat(Xcore @ 6.01.2008, 12:06:52 ) *
Witam!

Mam problem z kodem do odliczania. Mój kod:
Kod
<div id="costam"></div><BR><script type="text/javascript"><BR>function date_diff(d,o,t,x){return[x=~~(t=(d-o)/864e5),x=~~(t=(t-x)*24), x=~~(t=(t-x)*60),~~((t-x)*60)]}<BR>function R(t){t=date_diff(new Date(2008,02,14),new Date());document.getElementById('costam').innerHTML='Do bleee '+t[0]+" dni, "+t[1]+" godzin, "+t[2]+" minut, "+t[3]+" sekund";setTimeout('R()',1e3);}<BR>R()<BR></script>


No i 1 odliczanie działa. Ale jak wstawie drugie, to mi odlicza tylko to dolne odliczanie. To górne zmienia wartość dopiero po odświeżeniu strony a to dolne się rusza.

Moja strona: http://www.gptimer.yoyo.pl/Xcore/odliczanie.html

A i proszę jakby ktoś miał kod co by nie miał tego błędu i żadnego innego i żeby odliczał mi do jakiejś konkretnej godziny a nie do 0:00:00 to jakby ktoś mogłby go podać to byłbym wdzięczny winksmiley.jpg . Z góry dziękuje smile.gif


Problem jest pewnie w tym, że 3 razy definiujesz tą samą funkcję: R(t) i działa tylko ta ostatnia definicja. Zdefiniuj ją raz gdzieś na początku i dodaj dodatkowy parametr oznaczający id. Albo zdefiniuj każdą z 3 funkcji pod inną nazwą (co pewnie będzie najprostrze, ale nie będę już komentował przejrzystości kodu winksmiley.jpg ).

AA, i jeszcze jedno. Popraw kolory czcionek, bo czarny kolor na czarnym tle jest kiepsko widoczny winksmiley.jpg
Xcore
Cytat(qrees @ 6.01.2008, 12:21:37 ) *
Problem jest pewnie w tym, że 3 razy definiujesz tą samą funkcję: R(t) i działa tylko ta ostatnia definicja. Zdefiniuj ją raz gdzieś na początku i dodaj dodatkowy parametr oznaczający id. Albo zdefiniuj każdą z 3 funkcji pod inną nazwą (co pewnie będzie najprostrze, ale nie będę już komentował przejrzystości kodu winksmiley.jpg ).

AA, i jeszcze jedno. Popraw kolory czcionek, bo czarny kolor na czarnym tle jest kiepsko widoczny winksmiley.jpg


Ekhem...no tak biggrin.gif a jak ją zdefiniować pod inną nazwą? Tak, wiem że jestem zielony w JS. A co do kolorów to wcześniej wstawiłem <font color="white"> biggrin.gif
qrees
Cytat(Xcore @ 6.01.2008, 12:40:42 ) *
Ekhem...no tak biggrin.gif a jak ją zdefiniować pod inną nazwą? Tak, wiem że jestem zielony w JS. A co do kolorów to wcześniej wstawiłem <font color="white"> biggrin.gif

No zamiast R wpisać inną literę... Czyli masz przykładowo:
Kod
   function date_diff(d,o,t,x){return[x=~~(t=(d-o)/864e5),x=~~(t=(t-x)*24), x=~~(t=(t-x)*60),~~((t-x)*60)]}
  
   function D(t){t=date_diff(new Date(2008,02,16),new  Date());document.getElementById('GP 1 race').innerHTML='Do wyścigu  pozostało '+t[0]+" dni, "+t[1]+" godzin, "+t[2]+" minut, "+t[3]+"  sekund";setTimeout('D()',1e3);}
   D();


A co do koloru, to nie możesz umieszczać <div> wewnątrz <font>. Umieść <font> wewnątrz <div> i nie zapomnij zamknąć znacznika <font>.
Xcore
Dobra dzięki temat do zamknięcia.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.