Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS] Problem - skrypt odliczający
Forum PHP.pl > Forum > Przedszkole
poldo
Witam,

Napisałem prosty skrypt w JS, który działa poprawnie z jednym ALE, które nie wiem jak zabezpieczyć.
Skrypt odlicza 10 sekund i po tym czasie uaktywania nie widzialne elementy, a inne chowa.
Oto kody:

1. Czysty javascirpt:

Kod
<script type="text/javascript">
teraz2=9;
id=window.setTimeout("czas2();",1000);

function czas2()
{

teraz=teraz2;
document.getElementById('sekundy').innerHTML=teraz;

if(teraz==0) {
document.getElementById('sekundy').style.display="none";
document.getElementById('gra').style.display="inline";
}

if(teraz>0)
{
document.getElementById('gra').style.display="none";
czas();
}
}

function czas()
{


id=window.setTimeout("czas2();",1000);
teraz2=teraz-1;

}

</script>



2. Kod HTML:
Kod
<BR><span id="sekundy"></span><BR><span id="gra">Text</span><BR>



I skrypt działa elegancko, dopóki nie wybierzemy w przeglądarce przyciska ODŚWIEŻ.
Po odświeżeniu wszystkie elementy stają sie widoczne, a przeglądarka wypluwa błąd:

document.getElementById(...) jest pusty lub nie jest obiektem

Dodam, że gdy poruszamy się po stronie za pomocą linków, skrypt działa za każdym razem prawidłowo.
Błąd pojawia się tylko po odświeżaniu strony.

Probowałem, ale nie wiem jak mógłbym zabezpieczyć, proszę o POMOC sad.gif

PS. Dodam, że wałkowałem już kilka tematów dot. tej sprawy, np:
http://forum.php.pl/index.php?showtopic=34...rt=#entry196228

Ale niestety nie pomogło...
Daimos
nie wywoluj dwa razy:
  1. window.setTimeout("czas2();",1000);
poldo
Jezeli jej nie wywolam dwa razy odliczenie w ogoole nie zadziała... ;(

A moze zamiast JS, mozna by cos podobnego w PHP uczynić (nie koniecznie z pokazywaniem malejacego czasu).
Założenie jest takie by po X - sekundach, wyświetliła się na stronie inna funcja, ale bez przeładowania strony.
Podobnie to działa na np. Rapidshare gdy próbujemy sciąganąc jakiś plik musimy odczekać jakis czas i dopiero potem pojawia nam się okno gdzie musimy wpisać kod.
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.