Autor Zpráva
LemMr.a
Profil *
Ahoj potřebuji pomoct našel sem na netu script v kterém je aktuální datum,počítání doby co jste na stránkách a odpočítávání...
Jenže ja chci jen to odpočítávání a událost potom udělám přesměrováním to zatím neřeším... jenže když odstraním kousek scriptu nebo kousek v html který nepotřebuju celé se to zasekne a nefunguje to co mám teda ostranit když chci nechat pouze odpočítávání ???

Tady je script
<script>
<!--

var Arrived = new Date(0,0,0,0,0,0)
var toJump = new Date(0,0,0,0,0,30)
var zeroDate = new Date(0,0,0,0,0,0)
var fJumped = false



function SetDate( objDate, field, fShowDate ){
var hours=objDate.getHours()
var minutes=objDate.getMinutes()
var seconds=objDate.getSeconds()
var days = objDate.getDate()
var months = objDate.getMonth()
var years = objDate.getYear()

if (years < 1000) {
years = years + 1900
}

var strDate = days + "." + (months+1) + "." + years

if (hours==0)
hours="0"+hours
if (minutes<=9)
minutes="0"+minutes
if (seconds<=9)
seconds="0"+seconds

field.value= ( fShowDate ? ( strDate + ", " ) : "" ) + hours+":"+minutes+":" +seconds


}


function Clock(){
var currentDate = new Date()

// Inkrementujeme cas od vstupu o sekundu
Arrived.setTime( Arrived.getTime() + 1000 );

// dekrementujeme cas do zacatku akce o sekundu
toJump.setTime( toJump.getTime() - 1000 );

SetDate( currentDate, document.hours.time, 1 );
SetDate( Arrived, document.hours.elapsed, 0 );
if ( !fJumped )
SetDate( toJump, document.hours.timetojump, 0 );
else
document.hours.timetojump.value = "už proběhla"

if ( toJump.getTime() == zeroDate.getTime() ) {

fJumped = true
}

setTimeout("Clock()",1000)

}

Clock()
//-->
</script>


Tady je html kod


<form name="hours">
<table border="0" cellpadding="0" cellspacing="0" width="397">
<tr> <td width="165">Právě je: </td>
<td width="232"><input type="text" size="22" name="time"></td>
</tr>
<tr>
<td width="165">Na této stránce jste již:</td>
<td width="232"><input type="text" size="20" name="elapsed"></td>
</tr>

<tr>
<td width="165">K události dojde za:</td>
<td width="232"><input type="text" size="20" name="timetojump" class="downloadclass"></td>
</tr>
</table>
</form>

Prosím budu rád když mi někdo poradí
Laman
Profil *
na odpočet ti stačí setTimeout(událost_po_vypršení_času,čas_v_milisekundách)

ale předpokládám, že chceš i zobrazovat zbývající čas a s tím ti z hlavy neporadím
Laman
Profil *
možná ti pomůže tohle o pár řádků od tvého příspěvku tady na fóru
je lepší si tu funkci napsat znovu než vybírat něco z takové složité
LemMr.a
Profil *
no jasně právě že chci aby tam bylo odpočítávání vydět o to mi právě jde .... no a nehodil by mi sem někdo odkaz na ten script?
Laman
Profil *
ten link jsem ti napsal (to modré podtržené). ale už jsem to předělal. další úpravy snad zvládneš i sám

<span id="pocitadlo"></span>

<script>

function rozklad(t){ //zobrazí čas ve formátu mm:ss
min=Math.floor(t/60)
if(min<10){min="0"+min}
sek=t%60
if(sek<10){sek="0"+sek}
time=min+":"+sek
document.getElementById("pocitadlo").innerHTML=time}

var cas=90 //doba odpočítávání v sekundách
rozklad(cas)

function Odpocet(){
cas--
rozklad(cas)
if(cas==0){
clearInterval(akce)
alert("!") //jakákoli tvá akce, kterou chceš spustit po vypršení času
}
}
akce=setInterval("Odpocet()",1000)
</script>


PS: co vlastně chceš odpočítávat?
peta
Profil
Laman
Uvnitr funkci ti chybi var, Akce nemas take nikde definovane. Ve kterych prohlizecich ti to jede bez chyb? Jinak je to vypada funkcne.
Laman
Profil
nj, syntaxe (nebo jak se tomu říká) není mou silnou stránkou, píšu to trochu nepořádně, jediným hodnotícím kritériem je mi funkčnost. ale jede v IE i FF, Operu nemám, abych ji vyzkoušel

a k čemu jsou vary, to jsem nikdy nepochopil, všechno mi funguje dobře i bez nich
peta
Profil
Laman
Na to prijdes casem, uvidis. Parkrat ti nepojede script, protoze ti vyhlasi undefined...

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

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

0