Julia: Counter verringert Zahl nicht

Ich lese mit einer Funktion die werte h=00 min=01 sec=20 ein.

Ich möchte einen Counter programmieren. Beim ersten Mal verringert er sec auch um 1 so dass 00:01:19 in der ausgae steht, weiter gehts dann aber nicht.
kann mir Bitte jemand helfen

function Count(h, min, sec) {
document.title= h + ":" + min + ":" + sec;
document.F1.Zeit.value = h + ":" + min + ":" + sec ;
if (sec > -1)
{
 window.setTimeout("Count(h, min, sec-1)", "100");
} else
{
 min = min - 1;
 sec = 59;
  if (min > -1)
  {
   window.setTimeout("Count(h, min, sec-1)", "100");
  } else
  {
   h = h - 1;
   min = 59;
   if (h >-1)
    {
     window.setTimeout("Count(h, min, sec-1)", "100");
    } else
    {    alert("h < -1")
     alert ("Ende Pech !!!");
     document.title = "Ende"
    }
   }
  }
 }

Ich bedanke mich schon mal bei allen die sich über mein problem gedanken machen.

  1. Ich möchte einen Counter programmieren. Beim ersten Mal verringert er sec auch um 1 so dass 00:01:19 in der ausgae steht, weiter gehts dann aber nicht.
    kann mir Bitte jemand helfen

    evtl. du selber: htttp://glasgoogle.de

    Struppi.

    1. Sorry,
       ich hab das Problem schon selber gelöst. (sec--)

  2. Hi,

    window.setTimeout("Count(h, min, sec-1)", "100");

    Einen Timer kannst Du nicht mit setTimeout bauen, diese Methode ist abhaengig von der CPU-Auslastung und hat mit der realen Zeit nichts zu tun.
    Sieh Dir mal lieber das Date-Objekt an - das hat wenigstens was mit Deiner Computeruhr zu tun. Eine moegliche Vorgehensweise waere, dass Du die aktuelle Zeit (in Millisekunden) von der Zielzeit (ebenfalls in ms) abziehst, und dann hh:mm:ss-formatiert ausgibst. Diesen Prozess rufst Du mit setIntervall oder setTimeout periodisch auf.

    Gruesse, Joachim

    --
    Am Ende wird alles gut.