Propriedade charCode do KeyboardEvent

Definição e uso

A propriedade charCode retorna o código de caractere Unicode do evento Evento onkeypress do código de caractere Unicode da tecla.

O código de caractere Unicode é um número que representa um caractere (por exemplo, o número "97" representa a letra "a").

Dica:Para uma lista completa de todos os caracteres Unicode, consulte nossa Referência completa Unicode.

Dica:Se você quiser converter um valor Unicode para um caractere, use método fromCharCode().

Notas:Se esta propriedade for usada onkeydown ou onkeyup Para eventos de teclado, o valor retornado sempre é "0".

Notas:Esta propriedade é apenas de leitura.

Notas:O IE8 e versões anteriores não suportam a propriedade charCode. No entanto, para essas versões de navegador, você pode usar Propriedade keyCodeOu, para soluções cross-browser, você pode usar o seguinte código:

var x = event.charCode || event.keyCode; // Use charCode ou keyCode dependendo do suporte do navegador

Dica:Você ainda pode usar a propriedade keyCode para detectar teclas especiais (por exemplo, tecla Caps Lock ou teclas de direção). No entanto, fornecer tanto keyCode quanto charCode é apenas para compatibilidade. A mais recente especificação do DOM evento recomenda usar a propriedade key (se disponível).

Dica:Se você quiser saber se a tecla "ALT", "CTRL", "META" ou "SHIFT" foi pressionada no momento do evento de tecla, use altKey,ctrlKey/,metaKey ou shiftKey Atributo.

Exemplo

Exemplo 1

Obtenha o valor Unicode da tecla pressionada:

var x = event.charCode;

Experimente você mesmo

Exemplo 2

Solução cross-browser para obter o valor Unicode da tecla pressionada:

// Se o navegador suportar, use charCode, caso contrário, use keyCode (aplicável aos navegadores IE8 e anteriores)
var x = event.charCode || event.keyCode;

Experimente você mesmo

Exemplo 3

Se o usuário pressionar a tecla "O", mostre alguns textos:

function myFunction(event) {
  var x = event.charCode || event.keyCode;
  if (x == 111 || x == 79) { // o é 111, O é 79
    alert("Você pressionou a tecla 'O'!");
  }
}

Experimente você mesmo

Exemplo 4

Converta o valor Unicode para caractere:

var x = event.charCode || evt.keyCode;   // Obtenha o valor Unicode
var y = String.fromCharCode(x);          // Converta o valor para um caractere

Experimente você mesmo

Sintaxe

event.charCode

Detalhes técnicos

Retorno: Valor numérico, representando o código do caractere Unicode.
Versão DOM: DOM Level 2 Events

Suporte do navegador

Os números na tabela indicam a primeira versão do navegador que suporta plenamente o atributo.

Atributos Chrome IE Firefox Safari Opera
charCode Suporte 9.0 Suporte Suporte Suporte

Páginas relacionadas

Manual de referência HTML DOM:Atributo key do KeyboardEvent

Manual de referência HTML DOM:Atributo keyCode do KeyboardEvent

Manual de referência HTML DOM:Atributo which do KeyboardEvent