Tecla ControlRight — keyCode 17 (JS)
Modificadoras
ControlRight tem keyCode 17 e key Control, em location 2. Divide esse número com ControlLeft.
Sozinhas não fazem nada e se apoiam em outras. Esquerda e direita dividem o keyCode.
- code (posição)
- ControlRight
- key (layout dos EUA)
- Control
- keyCode (obsoleto)
- 17
- Hexadecimal
- 0x11
- location
- 2 · Direita
- Digita um caractere
- Não
- Divide keyCode com
- ControlLeft
No código
Comparar com code continua funcionando mesmo se o layout mudar.
window.addEventListener('keydown', e => {
if (e.code === 'ControlRight') {
// Control
}
});code versus key
code é a posição física, a mesma num teclado coreano ou francês. key é o que se digita e muda — o mesmo lugar dá a, A ou ㅁ. Use code para saber qual lugar foi pressionado e key para saber o que entrou.
keyCode saiu do padrão. Escreva código novo com code ou key; os números daqui servem para ler código antigo.
Teclas do mesmo tipo
Como ler
- code é a posição e key o caractere digitado. Para atalhos, compare com code.
- keyCode está obsoleto; use apenas para ler código antigo.
- Shift esquerdo e direito dividem o keyCode e se separam por location.
- O 1 da linha e o 1 do teclado numérico são teclas diferentes: 49 e 97.
Perguntas frequentes
Q. Qual é o keyCode de ControlRight?
17, ou 0x11 em hexadecimal.
Q. Como detecto ControlRight no código?
Compare com e.code === 'ControlRight'. Comparar por keyCode oscila entre navegadores e layouts.
Q. Qual é o location desta tecla?
2. Ela divide o keyCode com ControlLeft, então esse valor é o que as separa.
Q. Esta tecla digita um caractere?
Não. key é Control e nada é digitado.