Valansch: Javascript, Delay.

Hallo liebe Selfhtml Community,
ich habe folgendes Problem:
Ich will ein Funktion aufrufen, welche erst wenn sie NICHT innerhalb einer bestimmten zeit wieder aufgerufen wird etwas ausführt.
Als Beispiel; ein Zugführer muss alle 5 Minuten auf einen Knopf drücken, um seine Wachheit zu beweißen sonst ertönt ein Signal.(Hatte keine bessere Metapher)
Ich habe mir schon den post zu window.setTimeout() und window.clearTimeout() durchgelesen, diesen braucht ihr mir nicht zu posten. Da ist aber nur beschrieben wie ich es Hinbekomme, wenn der Timeout direkt im Script gestartet wird und nicht wenn der Timeout in einer Funktion steht (da habe ich probleme die Variable anzusprechen).
Würde mich über Lösungsvorschläge freuen, am besten mit ganzem Code und ausprobiert(Denn ich habe schon einiges selbst probiert.)

Danke im voraus,
fG

  1. So sieht das bei mir aus:

    [code lang=javascript]
            var _act = false;
    function writeTempData(_var, _val){
    if(_act == true){
    _act = false;
    clearTimeout(_to);
    }

    	\_to = setTimeout("writeTempData\_('" + \_var + "', '" + \_val + "')", 500);  
    	\_act = true;  
    }  
    

    [code]

    Wenn die Funktion nicht innerhalb 500ms nochmal aufgerufen wird, wird die Funktion writeTempData_() aufgerufen.

  2. Hi,

    Da ist aber nur beschrieben wie ich es Hinbekomme, wenn der Timeout direkt im Script gestartet wird und nicht wenn der Timeout in einer Funktion steht (da habe ich probleme die Variable anzusprechen).

    Dann arbeite diesen Artikel durch, der geht auch auf diese Problematik ein: http://aktuell.de.selfhtml.org/artikel/javascript/organisation/

    Würde mich über Lösungsvorschläge freuen, am besten mit ganzem Code und ausprobiert

    Noch'n Käffchen, während du wartest ...?

    MfG ChrisB

    --
    RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
  3. @@Valansch:

    nuqneH

    Als Beispiel; ein Zugführer muss alle 5 Minuten auf einen Knopf drücken, um seine Wachheit zu beweißen sonst ertönt ein Signal.

    Alle 0,5 Minuten. Und nicht drücken, sondern loslassen. (Sifa)

    Ich habe mir schon den post zu window.setTimeout() und window.clearTimeout() durchgelesen, diesen braucht ihr mir nicht zu posten.

    Und worin besteht nun genau dein Problem, diese anzuwenden?

    Qapla'

    --
    Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
    (Mark Twain)
    1. Als Beispiel; ein Zugführer muss alle 5 Minuten auf einen Knopf drücken, um seine Wachheit zu beweißen sonst ertönt ein Signal.

      Alle 0,5 Minuten. Und nicht drücken, sondern loslassen. (Sifa)

      Das siehst du falsch. Damit beweist er zwar seine Wachheit, aber beweißen tut er sie damit nicht.

      1. Das siehst du falsch. Damit beweist er zwar seine Wachheit, aber beweißen tut er sie damit nicht.

        Und wieso sieht Gunnar das falsch, wenn es der OP mit ß schreibt?
        Wenn schon klugscheissen, dann solltest du das richtig machen.