Avatar
matesax
Redaktor
Avatar
matesax:

Dobrý den,
chtěl bych se zaptat na řešení tohoto: Chtěl bych, aby se mi zobrazoval čas přesně sladěný s časem na PC - tedy aby se do nekonečna aktualizoval výpis času. Jenomže jak ten starý zápis smazat? Jak toto vůbec provést?

 
Odpovědět 17.4.2012 15:52
Avatar
Drahomír Hanák
Tým ITnetwork
Avatar
Odpovídá na matesax
Drahomír Hanák:

Na to se musí použít DOM (Document Object Model), aby se čas přepisoval a funkce setInterval, aby se aktualizoval.

function vypisCas() {
   // Uložíme si objekt Date
   var d = new Date();
   // Najdeme element s id="cas"
   var elem = document.getElementById("cas");
   // Uložíme tam aktuální čas
   elem.innerHTML = d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();
}
// Vypíšeme aktuální čas
vypisCas();
// Nastavíme automatické spouštění funkce vypisCas po 1s (1000ms)
setInterval(vypisCas, 1000);

Pak stačí v HTML přidat element třeba <div id="cas"></div> a čas se tam bude automaticky ukládat. JS kód musí ale být pod tímto elementem nebo ve funkci window.onload

 
Nahoru Odpovědět 17.4.2012 16:59
Avatar
matesax
Redaktor
Avatar
matesax:

Ať dělám co dělám nejde to:

<!DOCTYPE html>
<html lang="cs-cz" dir="ltr">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250"/>
<title>projec­t</title>
<script src="http://a­jax.googleapis­.com/ajax/lib­s/jquery/1.4.2/jqu­ery.min.js" type="text/ja­vascript"></scrip­t>

</head>

<body>

<script type="text/ja­vascript">

function vypisCas() {
// Uložíme si objekt Date
var d = new Date();
// Najdeme element s id="cas"
var elem = document.getE­lementById("cas");
// Uložíme tam aktuální čas
elem.innerHTML = d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();
}
// Vypíšeme aktuální čas
vypisCas();
// Nastavíme automatické spouštění funkce vypisCas po 1s (1000ms)
setInterval(vy­pisCas, 1000);

</script>

</body>

 
Nahoru Odpovědět 17.4.2012 17:49
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na matesax
David Čápka:

Zaprvé je tu tlačítko na vložení zdrojového kódu a zadruhé v body vůbec nemáš element, jehož obsah chceš měnit. Vlož si někam div s id cas, Drahoš ti to psal.

Nahoru Odpovědět 17.4.2012 17:53
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Drahomír Hanák
Tým ITnetwork
Avatar
Odpovídá na matesax
Drahomír Hanák:

Musí tam být ten tag <div id="cas"></div> a pokud máš jQuery, jde to udělat líp:

<!DOCTYPE html>
<html lang="cs-cz" dir="ltr">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250"/>
<title>project</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
// Počkáme si, až se načte HTML
$(function() {

 // Funkce uloží aktuální čas do tagu id="cas"
 function vypisCas() {
  // Uložíme si objekt Date
  var d = new Date();
  // Vložíme aktuální čas do elementu
  $("#cas").html( d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds() );
 }
 // Vypíšeme aktuální čas
 vypisCas();
 // Nastavíme automatické spouštění funkce vypisCas po 1s (1000ms)
 setInterval(vypisCas, 1000);
});
</script>

</head>
<body>

<!-- Sem bude JS vypisovat cas -->
<div id="cas"></div>

</body>
 
Nahoru Odpovědět 17.4.2012 17:55
Avatar
matesax
Redaktor
Avatar
matesax:

OK - ještě jeden dotaz - jak zadávat cesty k souborům? Děkuji.

 
Nahoru Odpovědět 17.4.2012 17:58
Avatar
matesax
Redaktor
Avatar
matesax:

Už jsem vše pochopil - děkuji.

 
Nahoru Odpovědět 17.4.2012 18:06
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.