Autor Zpráva
Actimel
Profil *
Zdravím, potřeboval bych poradit, jak rozběhnout hodiny v JS kód hodin je takový:
var cas = new Date();
var hodiny = cas.getHours();
var minuty = cas.getMinutes();
var sekundy = cas.getSeconds();
if (sekundy <10){
sekundy = "0" + sekundy
};
if (minuty < 10){
minuty = "0" + minuty
};
document.write(hodiny + ":" + minuty + ":" + sekundy);
zobrazují pouze čas kdy se strának načetla, když jsem napsal toto:
function bimbam () {
var cas = new Date();
var hodiny = cas.getHours();
var minuty = cas.getMinutes();
var sekundy = cas.getSeconds();
if (sekundy <10){
sekundy = "0" + sekundy
};
if (minuty < 10){
minuty = "0" + minuty
};
document.write(hodiny + ":" + minuty + ":" + sekundy);
window.setInterval("bimbam()",1000);
}
bimbam ()
tak mě to po 1sekundě vyhodilo na prázdnou stránku kde byl jen čas a ten stejně stál, když jsem to zkoušel podle návodu co je tu tak tam nebyly napsané podmínky:
if (minuty < 10){
minuty = "0" + minuty
};

atd. a bez toho to opravdu málokoho napadne že např. 1:5:0 je čas (1hodina a 5minut), když jsem tam ty podmínky dopsal, tak se mi čas prozměnu vůbec nezobrazil nevíte jak to rozchodit ?

Moderátor Alphard: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
Bubák
Profil
www.jakpsatweb.cz/javascript/postupy.html - poslední kapitola "Nelze zapisovat do dokumentu" včetně příkladu
Proto je nutné použít innerHTML. V "pravěku", kdy neexistoval innerHTML, se používala (zneužívala) změna formulářového pole.

http://diskuse.jakpsatweb.cz/?action=vthread&forum=8&topic=98315 - Hrátky s časem - rada
Actimel
Profil *
a mohl by jsi mi prosím upravit jak by to mělo být něják jsem to nepochopil jak to mám upravit aby to nevyhodilo čistou stránku s časem (kam dát innerHTML a jak vypsat ten čas) ?
Bubák
Profil
www.jakpsatweb.cz/javascript/priklady/datum-menici.html
Stačí vyměnit script za upravený.
Actimel
Profil
já mám ty hodiny v externím souboru, jak to vypíšu abych nemusel dát zase na všechny stránky <span id="cas"></span> jinak jsem nepochopil za jaký upravený to mám vyměnit ?
btw: jsem začátečník
peta
Profil
Actimel
http://peter-mlich.wz.cz/web/js/prjpw/index.htm
Plynulá změna času

Vysvetleni
if (sekundy <10){
sekundy = "0" + sekundy
};
s<10 ? "0"+s:s
//hodnota = podminka ? true hodnota : false hodnota

Actimel
"já mám ty hodiny v externím souboru, jak to vypíšu abych nemusel dát zase na všechny stránky <span id="cas"></span>"
Pekne, nastesti nikdo nevidel ani tvuj html kod, ani tvuj js kod, tim je problem neresitelny.

document.write bud zapise okamzite udaj pri vytvareni stranky. Nebo pri volani treba na tlacitko nebo casovac zpusobi otevreni NOVE stranky, zapsani udaje, (zavreni stranky). V tomto pripade ale ve strance mas jen a jen ten cas, zadny JS, takze dalsi zmena uz nemuze nastat.
Misto id ale muzes pouzit adresovani pres tag name nebo pridat tag hned po tagu body
xxx = document.createElement('SPAN');
xxx.id = 'cas';
document.getElemensByTagname('BODY')[0].appendChild(xxx);
Actimel
Profil
díky za další informace ale ty hodiny jsem nakonec asi včera vyřešil.. napíšu kod:
function bimbam () {
var cas = new Date();
var hodiny = cas.getHours();
var minuty = cas.getMinutes();
var sekundy = cas.getSeconds();
if (hodiny <10){
hodiny = "0" + hodiny
};
if (sekundy <10){
sekundy = "0" + sekundy
};
if (minuty < 10){
minuty = "0" + minuty
};
aktualniCas = hodiny +":" + minuty +":" + sekundy;
window.document.getElementById("cas").innerHTML = aktualniCas;
document.getElementById("cas").innerHTML;
window.setTimeout("bimbam()",1000);
}
bimbam ()

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:

Prosím používejte diakritiku a interpunkci.

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

0