Autor Zpráva
franta5
Profil
Ahoj, chtěl bych vědět jak udělat jednoduchý odpočet. Aby tak byli jenom čísla a nic víc a aby to vždy odpočítávalo 5 sekund. Takže 5, 4, 3, 2, 1, 0 a po odpočítání by to obnovilo aktuální stránku.
Kcko
Profil
franta5:
http://jquerybyexample.blogspot.com/2013/08/jquery-page-url-redirect-after-x-seconds.html
Trejpa
Profil
franta5:
Zhruba stejně dlouhý zápis bez natahování jQuery:

<p><span id=cislo></span>

<script>
var sekundy=5;
function odpocet()
{
 document.getElementById('cislo').innerHTML=sekundy;
 sekundy--;
 if(sekundy<-1)window.location=window.location;
}
odpocet();
window.setInterval("odpocet();",1000);
</script>
_es
Profil
franta5:
A funkčné obnovenie stránky aj bez JS: Přesměrování stránky » Přesměrování meta tagem
Chamurappi
Profil
Reaguji na Kcka:
> var iTimeRemaining = $("#spnSeconds").html();
> iTimeRemaining = eval(iTimeRemaining);
Hmm. Fascinující. Lidi, kteří neumí převádět řetězec na číslo, si troufají psát návody, na které další lidi bezmyšlenkovitě odkazují.


Reaguji na Trejpu:
if(sekundy<-1)
Spíš <0. A ještě by se možná hodilo zastavit ten interval, aby se v případě, že server nestihne odpovědět do sekundy, neposílal požadavek znovu.

window.setInterval("odpocet();",1000);
Raději setInterval(odpocet, 1000);.
franta5
Profil
Ten zápis od Trejpy fungoval dobře, akorát se mi po odpočtu neobnoví stránka ale pouze samotný odpočet.
Str4wberry
Profil
Také by šlo ten odpočet udělat animovaným GIFem a potom použít [#4].

Mimochodem, od IE 10 by šlo takto odpočítávat v čistém CSS.
Kcko
Profil
Chamurappi:
Neodkazuji bezmyšlenkovitě, naopak, celé jsem si to řádně přečetl. Eval bych nepoužil (stačilo by prosté přetypování), ale tady se nic neděje (při jeho použití).
joe
Profil
Str4wberry:
Mimochodem, od IE 10 by šlo takto odpočítávat v čistém CSS.
Moc pěkná ukázka. Jen jedna malinká drobnost, tu nulu bych tam nedával, není pěkné, když se všechno animuje a skoro při zobrazení nuly se to přesměruje...

Kcko:
Neodkazuji bezmyšlenkovitě, naopak...
Než bych našel tak děsivou ukázku, tak bych to snad dvakrát napsal... "eval is evil"

franta5:
Ten zápis od Trejpy fungoval dobře,
Že něco funguje, neznamená, že je to správně.
Str4wberry
Profil
Ještě doplním, že Bubák přišel s řešením funkčním bez JS i CSS od IE 3. :–)
Chamurappi
Profil
Reaguji na Str4wberryho:
by šlo takto odpočítávat v čistém CSS
Šlo by to i bez ježdění čísel, stačí vyměnit linear za steps(5).
A pomocí HTML+TIME jde udělat verze funkční ve starších Explorerech. Ale teď nevím, jak je na tom devítka, tuším, že ta HTML+TIME odepsala, aniž by přinesla náhradu.

Bubákova finta s <marquee> je geniální :-)


Reaguji na frantu5:
akorát se mi po odpočtu neobnoví stránka ale pouze samotný odpočet
Obnoví se stránka, ve které je ten odpočet. Takže se začne odpočítávat znovu… uznávám, že je to asi trochu nepraktické, ale tohle jsi chtěl. Co by se mělo obnovit?
franta5
Profil
Chamurappi:
Chtěl jsem aby se mi refreshla aktuální stránka, což se jaksi nedějě, obnovuje se nejspíš jenom to počítadlo
Chamurappi
Profil
Reaguji na frantu5:
Ukaž.
franta5
Profil
Udělá to 5,4,3,2,1,0 a začne odpočítávat zase od pětky, žádné obnovení stránky.
Chamurappi
Profil
Reaguji na frantu5:
Děkuji za ukázku.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: