Matze: Funktion nach gedrückt gehaltener Maustaste

Beitrag lesen

Hallo Micha,

Wie genau funktioniert denn setTimeout()?
Die Funktion benötigt eine Funktion, die nach Ablauf einer Zeit aufgerufen werden soll.

und was übergibt sie dann der Funktion? Kann man denn etwas mit übergeben?

Wie kann ich den Timer denn abbrechen wenn die Maustaste vorher losgelassen wurde?
Mit http://de.selfhtml.org/javascript/objekte/window.htm#clear_timeout@title=clearTimeout oder/und einer zusätzliche Flag, die von true auf false gesetzt wird.

Ich komme da irgendwie nicht weiter.
Ich habe jetzt folgendes:

// Funktion die der Timer aufruft  
function test(){  
    alert(timeout);  
}  
// und der Timer  
function timer() {  
    timeout = setTimeout(test, 2000);  
}

Ich habe die Zeit zum Testen auf 2000 erhöht, damit man die Verzögerung besser merkt.

Beim ersten Klick erscheint eine 2 in der Alert-Box. Beim zweiten Mal eine 3, dann eine 4, 5 usw.

Ich versteh setTimeout und clearTimeout irgendwie nicht :(
Ich dachte da müsste immer eine 2 stehen oder mindestens 2, 4, 6, 8 usw.

Ich habe auch keine Ahnung wie ich es jetzt verhindern kann die Funktion aufzurufen wenn man nicht 2000ms die Maustaste drückt.
Oder vielleicht erstmal das die Funktion überhaupt erst nach 2000ms Maustaste drücken aufgerufen wird.

Ich brauch wohl noch etwas Hilfe.

Danke und Grüße, Matze