Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Skrypt Zegara z przyspieszonym odmierzaniem
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Vizi
Potrzebuję skrypt zegara z przyspieszonym odmierzaniem czasu, to znaczy, że np: 1 minuta to 10 sekund a nie 60.
Szukałem takiego czegoś ale niestety nie mogłem znaleźć. Skrypt musiał by także zawierać jakiś sposób ustawienia dokładnego czasu.
Czy nie dało by się jakoś przekształcić tego kodu:
Kod
<HTML>
<HEAD>
<script LANGUAGE="JavaScript">
<!--

function pokazZegar()
{
  var czas=new Date();
  myclock=czas.getHours()+":"+czas.getMinutes()+":"+
          czas.getSeconds()+", "+czas.getFullYear()+"-"+
          (czas.getMonth()+1)+"-"+czas.getDate();

    if (document.layers) {
      zegar.document.write(myclock);
      zegar.document.close();
    } else if (document.all) {
      zegar.innerHTML = myclock;
    } else if (document.getElementById) {
      document.getElementById("zegar").innerHTML = myclock;
    }

  setTimeout('pokazZegar()',1000);
}
-->
</SCRIPT>
</HEAD>

<BODY onLoad="pokazZegar()">
<DIV id="zegar"></DIV>
</BODY>
</HTML>


Jestem kompletnym amatorem, nie znam języka java, i na razie nie mam czasu zgłębiać tego "dialektu" komputerowego z powodu rozpoczęcia się studiów, dla tego prosił bym o wy-edytowanie tego skryptu tak by jakoś tam działał. W przyszłość na pewno będę musiał nadrobić moje braki...

Z góry dziękuję
devnul
zainteresuj się metodami setTime() i getTime() obiektu Date()
Vizi
Znalazłem trochę inny zegar, trochę pogrzebałem i mogę ustawiać godzinę wedle życzenia.
wygląda on tak: http://l2sacrifice.xaa.pl/clock-24hr.html
Chciałbym by przy każdym przedziale czasowym XX:45:xx - XX:00:xx korzystał z innych niż standardowych plansz, np czerwonych. To znaczy, że przez 45 minut będzie używał czarnych a przez ostatnie 15 minut każdej godziny będzie używał czerwonych. Mam już gotowe obrazki, ale nie wiem co poprawić w tym skrypcie, i czy w ogóle tak się da. proszę o pomoc
Kod
<table cellpadding="5"><td bgcolor="black">
<img src="images/dg8.gif" name="hr1"><img
src="images/dg8.gif" name="hr2"><img
src="images/dgc.gif"><img
src="images/dg8.gif" name="mn1"><img
src="images/dg8.gif" name="mn2"><img
src="images/dgc.gif"><img
src="images/dg8.gif" name="se1"><img
src="images/dg8.gif" name="se2"></td></table>

<script type="text/javascript">
// (c) 2000-2009 ricocheting.com
// created: 2004-08-10

tzOffset = +2;

dg0=new Image();dg0.src="images/dg0.gif";
dg1=new Image();dg1.src="images/dg1.gif";
dg2=new Image();dg2.src="images/dg2.gif";
dg3=new Image();dg3.src="images/dg3.gif";
dg4=new Image();dg4.src="images/dg4.gif";
dg5=new Image();dg5.src="images/dg5.gif";
dg6=new Image();dg6.src="images/dg6.gif";
dg7=new Image();dg7.src="images/dg7.gif";
dg8=new Image();dg8.src="images/dg8.gif";
dg9=new Image();dg9.src="images/dg9.gif";

function dotime(){
theTime=setTimeout('dotime()',1000);
d = new Date();
dx = d.toGMTString();
dx = dx.substr(0,dx.length -3);
d.setTime(Date.parse(dx))
d.setHours(d.getHours() + tzOffset);
d.setMinutes(d.getMinutes() + 10);

hr= d.getHours()+100;
mn= d.getMinutes()+100;
se= d.getSeconds()+100;
tot=''+hr+mn+se;
document.hr1.src='images/dg'+tot.substring(1,2)+'.gif';
document.hr2.src='images/dg'+tot.substring(2,3)+'.gif';
document.mn1.src='images/dg'+tot.substring(4,5)+'.gif';
document.mn2.src='images/dg'+tot.substring(5,6)+'.gif';
document.se1.src='images/dg'+tot.substring(7,8)+'.gif';
document.se2.src='images/dg'+tot.substring(8,9)+'.gif';
}
dotime();

</script>

devnul
jak rozumiem chcesz gotowca? Jeśli tak to pomyliłeś działy. Temat powinien znaleźć się tutaj
kamil4u
- if -> https://developer.mozilla.org/index.php?tit...ukcje_warunkowe
- getMinutes -> https://developer.mozilla.org/index.php?tit...Date/getMinutes
- new Image i zmiana src -> https://developer.mozilla.org/pl/Przewodnik...e_obrazk%C3%B3w
- wywoływanie funkcji co jakiś czas -> https://developer.mozilla.org/pl/DOM/window.setInterval
-pseudokod:
Kod
funkcja zmień_obrazeki(){
jeżeli(minuta == 45){
//obrazek1 -> src = nowa1_ścieżka;
//obrazek2 -> src = nowa1_ścieżka;
//obrazek3 -> src = nowa1_ścieżka;
} else if(minuta == 0){
//obrazek1 -> src = nowa2_ścieżka;
//obrazek2 -> src = nowa2_ścieżka;
//obrazek3 -> src = nowa2_ścieżka;
}
}
Wywołuj_co_jakiś_czas(  zmień_obrazek , 60*1000); //60sekund
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.