Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano (edytowane)

Jeśli zły dział proszę o przeniesienie ... posiadam owy kod na odliczanie czasu na forum

<script type="text/javascript">
function CD(d,o,t,x){return[x=~~(t=(d-o)/864e5),x=~~(t=(t-x)*24), x=~~(t=(t-x)*60),~~((t-x)*60)]}
function R(t){
t=CD(new Date(2010,0,0,0,00,00),new Date());
document.getElementById('nowyrok').innerHTML='za '+t[0]+" dni, "+t[1]+" h, "+t[2]+" m, "+t[3]+"s"+" Nowy Rok";
if(!t[0]&&!t[1]&&!t[2]&&!t[3])document.getElementById('nowyrok').innerHTML='Koniec odliczania';
else setTimeout('R()',1e3);
}
onload=function(){R();}
</script>
<div id="nowyrok"></div>

jest ok ale nie mogę dodać go dwa razy , bo i tak pokazuje jeden

Prowadzę różne konkursy i dlatego obok chciałbym wstawić ile zostało do końca... Czy można coś z nim zrobić??

Edytowane przez groverr

Brak sygnatury

Opublikowano

<script type="text/javascript">
function CD(d,o,t,x){return[x=~~(t=(d-o)/864e5),x=~~(t=(t-x)*24), x=~~(t=(t-x)*60),~~((t-x)*60)]}
function R(t){
t=CD(new Date(2010,0,0,0,00,00),new Date());
document.getElementById('nowyrok').innerHTML='za '+t[0]+" dni, "+t[1]+" h, "+t[2]+" m, "+t[3]+"s"+" Nowy Rok";
if(!t[0]&&!t[1]&&!t[2]&&!t[3])document.getElementById('nowyrok').innerHTML='Koniec odliczania';
else setTimeout('R()',1e3);
}
onload=function(){R();}
</script>

ID do tego jest <div id="nowyrok"></div>

drugi robiłem

<script type="text/javascript">
function CD(d,o,t,x){return[x=~~(t=(d-o)/864e5),x=~~(t=(t-x)*24), x=~~(t=(t-x)*60),~~((t-x)*60)]}
function R(t){
t=CD(new Date(2010,0,0,0,00,00),new Date());
document.getElementById('XXX').innerHTML='za '+t[0]+" dni, "+t[1]+" h, "+t[2]+" m, "+t[3]+"s"+" Nowy Rok";
if(!t[0]&&!t[1]&&!t[2]&&!t[3])document.getElementById('XXX').innerHTML='Koniec odliczania';
else setTimeout('R()',1e3);
}
onload=function(){R();}
</script>

ID do tego jest <div id="XXX"></div>

wszystko w head a ID tam gdzie chciałem ...

Brak sygnatury

  • Manager
Opublikowano

Nie ogarniam zbyt .js, ale może i nazwy funkcji warto zmienić? Poza tym ten kod jest strasznie ściśnięty, bez wcięć i trudno się go analizuje. Masz ładniejszą wersję?

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano (edytowane)

A nie lepiej ten kod przepisać na jakiś bardziej 'elegancki'? Jeżeli chcesz kilka liczników, to logicznym jest, że wypada czas do końca gdzieś trzymać? Na dobry początek polecam stworzyć w tym kodzie zmienną globalną, coś w ten deseń:

<script type='text/javascript'>
var timers = new Object();
</script>]

W ten sposób możesz trzymać parę liczników, tak samo jak i ich ID. Kolejny logiczny krok jaki powinieneś zrobić to jest dosyć prosty. W miejsce gdzie dajesz licznik wyświetlasz span z ID, np:

<script type='text/javascript'>
var timers = new Object();
</script>
<span id="contest_{$contest['id']}"></span>
<script type='text/javascript'>
timers.contest_{$contest['id']} = 300;
</script>]

W ten sposób możesz mieć w tablicy aktywne konkursy. Jedyne co musisz zrobić to podstawić ID konkursów ( aby JS wiedział co i jak ) i czas, w takiej formie jakiej jest licznik zrobiony. To podpowiedzi - gotowca nie daję, bo mi się nie chcę robić :-)

Edytowane przez Largo
  • Lubię to 1

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.