molily: onKeyPress events

Beitrag lesen

Hallo,

Gibt's eine Möglichkeit im Browser die Zeitraum zwischen Tastedrücken zu vergrößern?

Nein, wenn der Benutzer zwei Tasten schnell hintereinander drückt, werden auch zwei keypress-Ereignisse erzeugt.

Es geht mir um eine Pause nach dem Tastedrucken (z.B. 5 Sekunden). Während dieser Pause wäre es keine Reaktion auf die nächsten Tasteduck.

Dann baue dir eine Logik, die nach einem Tastendruck erst wieder nach einer 5-sekündigen Wartezeit Tastendrücke verarbeitet. Beispiel:

var auszeit = false;
[Element].onkeypress = handler;
function handler (e) {
   // Wenn gerade Auszeit ist, breche die Funktion ab.
   if (auszeit)
      return;

// ... Behandle Tastendruck ...

// Starte Auszeit
   auszeit_start();
   // Nach 5 Sekunden beende Auszeit
   window.setTimeout(auszeit_ende, 5000);
}
function auszeit_start () {
   auszeit = true;
}
function auszeit_ende () {
   auszeit = false;
}

Mathias