Cod taste JavaScript
Apasă orice tastă ca să vezi valorile JavaScript event.key, event.code, keyCode, which și location, cu modificatori, istoric și un tabel complet de coduri.
Apasă „Începe captarea tastelor” sau fă clic în caseta de mai jos, apoi apasă orice tastă. Fă clic în afara casetei ca să dai tastatura înapoi paginii.
- event.key
- –
- event.code
- –
- event.keyCode
- –
- event.which
- –
- event.location
- –
- event.repeat
- –
- Taste de blocare active
- –
| Eveniment | key | code | keyCode | location | Modificatori | repeat |
|---|
| key | code | keyCode | location | Notă |
|---|
valorile key sunt pentru o dispunere americană, fără modificatori; alte dispuneri produc alte caractere pentru același code. keyCode și which sunt depășite, dar încă folosite pe scară largă.
Cum afli codul unei taste
- Apasă Începe captarea tastelor sau fă clic în caseta mare. O bordură colorată arată că instrumentul ascultă.
- Apasă orice tastă sau combinație. Afișajul mare arată valoarea
keyșikeyCode-ul vechi, iar cardurile de dedesubt listeazăevent.key,event.code,event.keyCode,event.which,event.location,event.repeatși Taste de blocare active (Caps Lock, Num Lock, AltGraph). - Insignele Modificatori se aprind pentru
ctrlKey,shiftKey,altKeyșimetaKey. - Copiază Fragment JavaScript pentru această tastă. Din Potrivire după alegi între
event.key,event.codesauevent.keyCode (legacy). - Derulează Istoric taste (cele mai recente primele) ca să compari mai multe apăsări. Bifează Înregistrează și evenimentele keyup ca să vezi și eliberările.
- Răsfoiește sau filtrează tabelul Referință coduri taste (QWERTY american) când ai nevoie de o valoare fără să apeși tasta.
Cât timp caseta are focusul, acțiunea implicită a fiecărei taste este blocată, așa că Tab, săgețile, Backspace sau Ctrl+S sunt captate în loc să mute focusul ori să deschidă o fereastră de dialog. Fă clic oriunde în afara casetei ca să dai tastatura înapoi paginii. Câteva comenzi rapide sunt tratate de sistemul de operare înainte ca browserul să le vadă (Alt+Tab, Ctrl+Alt+Del, Cmd+Tab, adesea Print Screen), deci nicio pagină web nu le poate citi.
key, code sau keyCode: pe care îl folosești?
Un KeyboardEvent poartă mai multe valori care răspund la întrebări diferite:
| Proprietate | Ce îți spune | Exemplu (tasta A pe AZERTY) |
|---|---|---|
key |
Caracterul sau tasta numită produsă, după dispunere și modificatori | "a", "A" cu Shift |
code |
Poziția fizică a tastei, independentă de dispunere | "KeyQ" |
keyCode / which |
Un număr vechi, de obicei codul ASCII al literei mari | 65 |
location |
0 standard, 1 stânga, 2 dreapta, 3 tastatură numerică | 0 |
Folosește key când contează sensul: Enter pentru trimitere, Escape pentru închidere, „?” pentru deschiderea unui panou de ajutor. Folosește code pentru jocuri și comenzi rapide care depind de poziția tastelor, cum ar fi mișcarea cu WASD, care trebuie să rămână în același loc pe o tastatură franceză AZERTY sau germană QWERTZ. Evită keyCode și which în cod nou: sunt depășite, valorile lor diferă între browsere pentru punctuație (Firefox trimite 59 pentru punct și virgulă, unde Chrome trimite 186) și nu pot distinge Shift-ul stâng de cel drept sau cele două taste Enter. Merită totuși cunoscute atunci când întreții cod mai vechi, de aceea instrumentul le afișează.
Despre fragmentul generat
Listener-ul generat se potrivește exact cu tasta apăsată de tine, inclusiv Ctrl, Alt și Meta. Pentru caracterele imprimabile potrivite după key, Shift este omis, pentru că face deja parte din valoare: Shift+1 dă "!" pe o dispunere americană. Când apeși un modificator singur, fragmentul nu repetă indicatorul lui. Ține minte că metaKey este tasta Cmd pe Mac și tasta Windows pe PC, așa că comenzile rapide multiplatformă testează de obicei event.ctrlKey || event.metaKey.
Întrebări frecvente
De ce arată keyCode același număr pentru caractere diferite?
keyCode identifică tasta, nu caracterul. Cifra 1 și „!” au amândouă 49, iar „a” și „A” au 65. Citește key ca să obții caracterul real.
De ce apare tasta mea AZERTY ca KeyQ?
code denumește tastele după poziția lor pe o tastatură QWERTY americană. Tasta marcată A pe o tastatură franceză se află unde este Q pe una americană, deci code-ul ei este KeyQ, iar key este „a”.
Ce înseamnă „Dead” în event.key?
Este o tastă moartă (dead key), cum ar fi ^ sau ¨ pe o tastatură franceză, care așteaptă următoarea tastă pentru a forma o literă cu accent. Caracterul final este livrat de evenimentul următoarei taste sau de evenimentul input al unui câmp de text.
De ce spune event.repeat „da”?
Ții tasta apăsată, iar sistemul de operare trimite repetări automate. Verifică event.repeat ca să le ignori, de exemplu ca să declanșezi o comandă rapidă o singură dată.
Se înregistrează sau se trimite ceva din ce tastez?
Nu. Evenimentele de tastatură sunt citite de această pagină în browserul tău și nu sunt trimise nicăieri. Istoricul dispare când reîncarci sau părăsești pagina.
Instrumente similare
- Test tastatură Test gratuit pentru tastatură: aprinde fiecare tastă apăsată, afișează valorile key, code și location, numără N-key rollover și detectează tastele blocate.
- Tester regex Testează expresii regulate JavaScript în timp real, cu potriviri evidențiate, grupuri de captură, înlocuire și explicația fiecărui element.
- Explorator AST JavaScript Lipește cod JavaScript și explorează arborele sintactic abstract (ESTree, analizat cu Acorn) în browser. Fă clic pe noduri și exportă AST-ul ca JSON.