Những mã khóa nào có sẵn cho JavaScript? Nếu chúng không giống nhau cho tất cả các trình duyệt, vui lòng liệt kê các mã khóa cho từng trình duyệt.
Những mã khóa nào có sẵn cho JavaScript? Nếu chúng không giống nhau cho tất cả các trình duyệt, vui lòng liệt kê các mã khóa cho từng trình duyệt.
Câu trả lời:
keyCodes khác với các giá trị ASCII. Để tham khảo đầy đủ về Mã khóa, hãy xem http://unixpapa.com/js/key.html
Ví dụ, các số Numpad có Mã khóa 96 - 105, tương ứng với phần đầu của bảng chữ cái viết thường trong ASCII. Điều này có thể dẫn đến sự cố khi xác thực đầu vào số.
Đã làm theo lời khuyên của @ pimvdb và tạo của riêng tôi:
http://daniel-hug.github.io/characters/
Hãy kiên nhẫn, vì mất vài giây để tạo một phần tử cho mỗi trong số 65536 ký tự có mã khóa JavaScript.
Tôi cần một cái gì đó như thế này cho giao diện người dùng cấu hình điều khiển của trò chơi, vì vậy tôi đã biên soạn một danh sách cho các mã khóa bố cục bàn phím tiêu chuẩn của Hoa Kỳ và ánh xạ chúng thành các tên phím tương ứng.
Đây là một fiddle chứa bản đồ cho mã -> tên và ngược lại: http://jsfiddle.net/vWx8V/
Nếu bạn muốn hỗ trợ các bố cục chính khác, bạn sẽ cần sửa đổi các bản đồ này để phù hợp với chúng một cách riêng biệt.
Đó là trừ khi bạn đang tìm kiếm danh sách các giá trị mã khóa bao gồm các ký tự điều khiển và các giá trị đặc biệt khác không thể (hoặc hiếm khi) có thể nhập bằng bàn phím và có thể nằm ngoài phạm vi của keydown
/keypress
/ keyup
sự kiện của Javascript. Nhiều người trong số họ là các ký tự điều khiển hoặc các ký tự đặc biệt như null
( \0
) và rất có thể bạn sẽ không cần đến chúng.
Lưu ý rằng số lượng phím trên bàn phím đầy đủ ít hơn nhiều giá trị mã khóa.
Ứng dụng này thật tuyệt vời. Về cơ bản, nó là một bàn phím ảo hiển thị ngay cho bạn mã phím được nhấn trên bàn phím tiêu chuẩn của Hoa Kỳ.
Đây là danh sách đầy đủ - Tôi tin rằng: http://www.cambiaresearch.com/articles/15/javascript-char-codes-key-codes
Dưới đây là một số liên kết hữu ích:
Cột thứ 2 là Mã khóa và cột html hiển thị cách nó sẽ hiển thị. Bạn có thể kiểm tra nó ở đây .
Một câu trả lời có thể sẽ được đưa ra khi bạn chạy đoạn mã này.
document.write('<table>')
for (var i = 0; i < 250; i++) {
document.write('<tr><td>' + i + '</td><td>' + String.fromCharCode(i) + '</td></tr>')
}
document.write('</table>')
td {
border: solid 1px;
padding: 1px 12px;
text-align: right;
}
table {
border-collapse: collapse;
}
* {
font-family: monospace;
font-size: 1.1em;
}