Código da tecla Context Menu em JavaScript

Para Context Menu, event.key é ContextMenu, event.code é ContextMenu e o keyCode obsoleto é 93. Pressione qualquer tecla no Localizador de Key Code para ver os valores dela em tempo real.

Atualizado em

PropriedadeValor
event.keyContextMenu
event.codeContextMenu
event.keyCode / which (obsoleto)93

Como detectar a tecla Context Menu

document.addEventListener('keydown', (event) => {
  if (event.key === "ContextMenu") {
    // Context Menu was pressed
  }
});

Use event.key para reagir ao significado da tecla (ele segue o layout do teclado) e event.code para a posição física dela, por exemplo WASD em jogos. keyCode e which estão obsoletos: ainda funcionam, mas seus valores variam entre navegadores e layouts.

Como os navegadores tratam a tecla Context Menu

A tecla de menu (ou Shift+F10) abre o menu de contexto. Escute o evento contextmenu em vez dessa tecla, assim o mouse, o teclado e o toque longo funcionam.

No React

<input onKeyDown={(e) => { if (e.key === "ContextMenu") { /* … */ } }} />

Perguntas frequentes

Qual é o keyCode da tecla Context Menu?
93. Ele está obsoleto, porém: use event.key (“ContextMenu”) ou event.code (ContextMenu) em código novo.
Qual é a diferença entre event.key e event.code?
event.key é o caractere ou a ação que a tecla produz com o layout atual; event.code é a posição física da tecla, igual em todos os layouts.
Devo usar keydown ou keypress?
keydown. O evento keypress está obsoleto e não dispara para teclas que não produzem caracteres, como Escape ou as setas.