Answer-ID
  • Întrebări
  • Tag-uri
  • Categorii
Notificări
Recompense
Înregistrare
După înregistrare, veți primi notificări despre răspunsurile și comentariile la întrebările DVS.
Logare
Dacă aveţi deja un cont, autentificaţi-vă pentru a verifica notificările noi.
Aici vor fi recompensele pentru întrebările, răspunsurile și comentariile adăugate sau modificate.
Mai mult
Sursă
Editează
 Seibar
Seibar

Capturați cheia TAB în caseta de text

Aș dori să pot utiliza cheia Tab în caseta de text pentru a filă în patru spații. În modul în care este acum, tasta Tab salută cursorul la următoarea intrare.

Există un javascript care va captura cheia Tab în caseta de text înainte de a bulează până la interfața de utilizare?

Înțeleg că unele browsere (adică FireFox) pot să nu permită acest lucru. Ce zici de un combo-cheie combo particularizat, cum ar fi Shift + Tab sau Ctrl + Q ?

95 2008-08-06T13:27:05+00:00 6
Programare
user-interface
javascript
Comentarii la întrebare (0)
Tom
1 ianuarie 1970 в 3:00
1970-01-01T03:00:00+00:00
Mai mult
Sursă
Editează
#3370

Răspunsul anterior este bine, dar eu sunt unul dintre acei tipi care se împotrivesc ferm comportamentului de amestecare cu prezentarea (punerea JavaScript în codul meu HTML), așadar prefer să pun logica mea de gestionare a evenimentelor în fișierele mele JavaScript. În plus, nu toate browserele implementează evenimentul (sau e) în același mod. Poate doriți să faceți o verificare înainte de a rula orice logică:

document.onkeydown = TabExample;

function TabExample(evt) {
  var evt = (evt) ? evt : ((event) ? event : null);
  var tabKey = 9;
  if(evt.keyCode == tabKey) {
    // do work
  }
}
0
0
Comentarii (0)
Lauren
1 ianuarie 1970 в 3:00
1970-01-01T03:00:00+00:00
Mai mult
Sursă
Editează
#3371

Aș prefera ca indentarea filelor să nu funcționeze decât să rupă tabela între elementele formularului.

Dacă doriți să introduceți codul în caseta Markdown, utilizați Ctrl + K (sau? K pe un Mac).

În ceea ce privește oprirea efectivă a acțiunii, jQuery (care utilizează Stack Overflow) va opri un eveniment de la bubbling atunci când returnați falsul de la un apel invers. Acest lucru face viața mai ușoară pentru lucrul cu mai multe browsere.

0
0
Comentarii (0)
Wally Lawless
1 ianuarie 1970 в 3:00
1970-01-01T03:00:00+00:00
Mai mult
Sursă
Editează
#3372

Aș sfătui să nu modificați comportamentul implicit al unei chei. Fac cât mai mult posibil fără să atingeți un mouse, așa că dacă faceți cheia tab-ului să nu treceți la câmpul următor într-un formular, voi fi foarte agravat.

O cheie de comenzi rapide ar putea fi folositoare totuși, mai ales în cazul blocurilor de coduri mari și în cuiburi. Shift-TAB este o opțiune proastă, deoarece în mod normal mă duce la câmpul anterior pe un formular. Poate un nou buton din editorul WMD pentru a introduce un cod-TAB, cu o cheie de comenzi rapide, ar fi posibil?

0
0
Comentarii (0)
ScottKoon
1 ianuarie 1970 в 3:00
1970-01-01T03:00:00+00:00
Mai mult
Sursă
Editează
#13130

Chiar dacă capturați evenimentul keydown / keyup, acestea sunt singurele evenimente la care se declanșează fila tab, aveți nevoie în continuare de o cale de a preveni apariția acțiunii implicite, trecând la următorul element din ordinea filelor.

În Firefox, puteți apela metoda preventDefault () pe obiectul de eveniment transmis manipulatorului evenimentului. În IE, trebuie să întoarceți fals din mânerul evenimentului. Biblioteca JQuery oferă o metodă preventDefault la obiectul evenimentului care funcționează în IE și FF.





0
0
Comentarii (0)
Paul D. Waite
1 ianuarie 1970 в 3:00
1970-01-01T03:00:00+00:00
Mai mult
Sursă
Editează
#2280003

In Chrome on the Mac, alt-tab inserts a tab character into a