keydown
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
O evento keydown
é disparado quando uma tecla é pressionada. Diferente do evento keypress
, o keydown
é disparado para teclas que produzem e que não produzem um caractere.
Informações gerais
- Especificação
- Interface
- Burbulha
-
Sim
- Cancelável
-
Sim
- Alvo
-
Document, Element
- Ação Padrão
-
Variações: evento
keypress
; carrega sistema de composição de texto; eventosblur
efocus
; eventoDOMActivate
; outro evento
Propriedades
Propriedade | Tipo | Descrição |
---|---|---|
target Somente leitura |
EventTarget | O alvo do evento (o alvo de nível mais alto na árvore DOM). |
type Somente leitura |
DOMString | O tipo do evento. |
bubbles Somente leitura |
Boolean | Se o evento normalmente burbulha ou não |
cancelable Somente leitura |
Boolean | Se o evento é cancelável ou não |
view Somente leitura |
WindowProxy |
document.defaultView
(window do documento)
|
detail Somente leitura |
long (float ) |
0. |
target Somente leitura |
EventTarget (elemento DOM) | Elemento focado processando o evento, elemento raiz se nenhum elemento input adequado está focado. |
char Somente leitura |
DOMString (string) |
O caractere correspondente à tecla. Se a tecla corresponde a um
caractere imprimível, este valor é uma string Unicode não vazia,
contendo o caractere. Se a tecla não tem uma representação imprimível, o
valor é uma string vazia. Veja
key names and char values
para detalhes.
Nota: Se a tecla for usada como uma macro que insere
múltiplos caracteres, o valor deste atributo é toda a string, não
apenas o primeiro caractere.
|
key Somente leitura |
DOMString (string) |
O valor da tecla pressionada. Se a tecla tem uma representação
imprimível, o valor deste atributo é o mesmo do atributo
char . Caso contrário, é uma das strings key especificadas
em
Key Values. Se a tecla não pode ser identificada, o valor do atributo é a string
"Unidentified". Veja
key names and char values
para detalhes. Somente Leitura.
|
code Somente leitura |
DOMString (string) | Mantém uma string que identifica a tecla física sendo pressionada. O valor não é afetado pelo layout atual do teclado ou estado de modificador, portando uma tecla particular sempre retornará o mesmo valor. |
charCode Somente leitura |
Unsigned long (int) |
O número de referência Unicode da tecla; este atributo é usado somente
pelo evento
keypress . Para teclas cujo atributo char contém múltiplos
caracteres, este é o valor Unicode do primeiro caractere daquele
atributo.
Aviso: Este atributo está obsoleto; você deve usar
char no lugar, se disponível.
|
keyCode Somente leitura |
Unsigned long (int) |
Um código numérico, dependente do sistema e da implementação,
identificando o valor não modificado da tecla pressionada. Este é
usualmente o código decimal ASCII (RFC 20) ou código Windows
1252 correspondente à tecla; veja
Virtual key codes para uma lista de
valores comuns. Se a tecla não pode ser identificada, este valor é 0.
Aviso: Este atributo está obsoleto; você deve usar
key no lugar, se disponível.
|
which Somente leitura |
Unsigned long (int) |
Um código numérico, dependente do sistema e da implementação,
identificando o valor não modificado da tecla pressionada; este é
usualmente o mesmo que keyCode .
Aviso: Este atributo está obsoleto; você deve usar
key no lugar, se disponível.
|
location Somente leitura |
long (float) | A localização da tecla no dispositivo. |
repeat Somente leitura |
boolean |
true se a tecla foi pressionada tempo suficiente para
disparar repetição de tecla, false caso contrário.
|
locale Somente leitura |
string | O código do idioma para o evento, se disponível; uma string vazia caso contrário. |
ctrlKey Somente leitura |
boolean |
true se a tecla control estava pressionada quando o evento
foi disparado. false caso contrário.
|
shiftKey Somente leitura |
boolean |
true se a tecla shift estava pressionada quando o evento
foi disparado. false caso contrário.
|
altKey Somente leitura |
boolean |
true se a tecla alt estava pressionada quando o evento foi
disparado. false caso contrário.
|
metaKey Somente leitura |
boolean |
true se a tecla meta estava pressionada quando o evento foi
disparado. false caso contrário.
|
preventDefault()
do evento keydown
Iniciando com o Gecko 25, uma chamada para o método preventDefault()
do evento keydown
evita dispachar o evento keypress
seguinte. Este é um comportamento válido para a especificação D3E e os principais navegadores web se comportam desta forma. Por outro lado, o Gecko 24 e anteriores dispachavam o evento keypress
mesmo que o método preventDefault()
do evento keydown
anterior fosse chamado, embora o atributo defaultPrevented
do evento keypress
fosse true
neste caso.
Eventos Relacionados
Exemplo
<!DOCTYPE html> <html> <head> <script> 'use strict'; document.addEventListener('keydown', (event) => { const keyName = event.key; alert('keydown event\n\n' + 'key: ' + keyName); }); </script> </head> <body> </body> </html>