Lithaila: Tabulator

Beitrag lesen

Hallo!

Hier die wesentlichen Zeilen des Codes:

  
  
document.onkeydown=keyDownHandler;  
  
function keyDownHandler(event) {  
[...]  
    // tabulator key  
    if (keyCode == 9) {  
        insertTab();  
        return;  
    }  
}  
  
function insertTab() {  
  
    cursor = getCursorPos();  
    text = editLine.value;  
  
    rest1 = text.substring(0, cursor);  
    rest2 = text.substring(cursor, text.length);  
  
    editLine.value = rest1+"XXXX"+rest2;  
    tabCursor = cursor;  
}  
  
function insertTab() {  
  
    // get the current position of cursor in editLine  
    cursor = getCursorPos();  
  
    // get the current value of the editLine  
    text = editLine.value;           // editLine ist ein Input  
  
    // text before cursor  
    rest1 = text.substring(0, cursor);  
  
    // text behind cursor  
    rest2 = text.substring(cursor, text.length);  
  
    // insert "tab" at current cursor position  
    editLine.value = rest1+"XXXX"+rest2;  
  
    // restore cursor position  
    tabCursor = cursor;  
}  
  

Ich fange alle Tastatureingaben ab, analysiere sie im keyDownHandler und wenn es ein Tab war springe ich zu insertTab.

Hier fuege ich an die aktuelle Position ein Tab ein (XXXX).

Soweit so gut.
Leider wird das Tab anschliessend verwendet, um dem naechsten Element den Focus zu geben; dies genau moechte ich verhindern.

Vielen Dank fuer die Ausdauer.

Lithaila