Mã phím Context Menu trong JavaScript

Với Context Menu, event.key là ContextMenu, event.code là ContextMenu và keyCode đã lỗi thời có giá trị là 93. Nhấn phím bất kỳ trong Key Code Finder để xem các giá trị của nó theo thời gian thực.

Cập nhật

Thuộc tínhGiá trị
event.keyContextMenu
event.codeContextMenu
event.keyCode / which (đã lỗi thời)93

Cách nhận biết Context Menu

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

Dùng event.key để phản ứng với ý nghĩa của phím (phím này theo bố cục bàn phím) và event.code cho vị trí vật lý của phím, ví dụ WASD trong game. keyCode và which đã lỗi thời: chúng vẫn chạy được, nhưng giá trị khác nhau giữa các trình duyệt và bố cục.

Trình duyệt xử lý Context Menu như thế nào

Phím menu (hoặc Shift+F10) mở menu ngữ cảnh. Hãy lắng nghe sự kiện contextmenu thay vì phím này để chuột, bàn phím và thao tác nhấn giữ đều hoạt động.

Trong React

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

Câu hỏi thường gặp

Keycode của Context Menu là gì?
93. Tuy nhiên, giá trị này đã lỗi thời: trong code mới, hãy dùng event.key (“ContextMenu”) hoặc event.code (ContextMenu).
Khác nhau giữa event.key và event.code là gì?
event.key là ký tự hoặc hành động mà phím tạo ra theo bố cục hiện tại; event.code là vị trí vật lý của phím, giống nhau trên mọi bố cục.
Nên dùng keydown hay keypress?
keydown. Sự kiện keypress đã lỗi thời và không kích hoạt với các phím không tạo ký tự, như Escape hoặc các phím mũi tên.