Tôi đang nhấn phím nào?
Nhấn một phím bất kỳ, trang này sẽ hiện event.key, event.code và keyCode cũ của phím đó. Ví dụ phím A cho key "a", code "KeyA" và keyCode 65, còn phím Enter cho code "Enter" và keyCode 13.
Cách dùng
- Nhấp vào chỗ bất kỳ trên trang rồi nhấn một phím trên bàn phím. Không cần nhấp vào ô nhập văn bản.
- Đọc tên phím, mã vật lý và keyCode cũ trong bảng. Giữ Shift, Ctrl, Alt hoặc Cmd để xem trạng thái phím bổ trợ, và giữ một phím để thấy chỉ báo lặp bật lên.
- Dùng nút Sao chép để đưa các giá trị vào mã của bạn. Danh sách bên dưới lưu mười lần nhấn gần nhất.
Cách tính
Trình duyệt gửi sự kiện keydown mỗi lần nhấn phím. event.key là giá trị phím tạo ra, như "a", "A" hay "Enter", và thay đổi theo bố cục bàn phím và Shift. event.code là phím vật lý, như "KeyA", và giữ nguyên ở mọi bố cục nên rất hợp để điều khiển trong game.
event.keyCode là mã số cũ. Nó đã lỗi thời nhưng vẫn có trong các script cũ và mã thời jQuery nên được hiển thị. Khi đang soạn chữ bằng bộ gõ (IME), giá trị là 229. event.location cho biết vị trí phím: 0 thường, 1 trái, 2 phải, 3 bàn phím số.
Để trang không cuộn hoặc mở trợ giúp khi bạn thử, công cụ hủy thao tác mặc định của trình duyệt với hầu hết các phím. Tab, Escape, F5, F11, F12 và phím tắt dùng Ctrl hoặc Cmd được để nguyên. Các phím do hệ điều hành xử lý như Fn, âm lượng, độ sáng không bao giờ đến được trang web.
Câu hỏi thường gặp
event.key và event.code khác nhau thế nào?
event.key là thứ phím gõ ra nên phụ thuộc bố cục và Shift. event.code là vị trí vật lý. Trên bàn phím AZERTY của Pháp, phím ở vị trí chữ Q có code "KeyQ" nhưng key là "a". Dùng code cho điều khiển game và key cho phím tắt phụ thuộc ký tự.
Tôi có nên tiếp tục dùng keyCode không?
Không. keyCode và which đã lỗi thời. Với mã mới hãy dùng event.key hoặc event.code. Các con số được hiển thị để bạn đọc hoặc sửa script cũ, trong đó ví dụ 13 là Enter, 27 là Escape và 32 là dấu cách.
Vì sao hiện 229 hoặc "Process"?
Bộ gõ tiếng Trung, Nhật, Hàn và các ngôn ngữ khác nhận phím trước khi bạn soạn chữ, nên trình duyệt báo 229. Hãy chuyển sang bố cục tiếng Anh nếu cần giá trị phím thuần.
Vì sao phím tắt hoặc phím đa phương tiện của tôi không hiện?
Hệ điều hành hoặc trình duyệt có thể lấy phím trước khi trang nhìn thấy. Ctrl+W, Alt+Tab, Cmd+Q và hàng Fn trên nhiều laptop là ví dụ. Nếu trang không phản ứng thì phím đó không hề đến mã web.