keymap.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. define(function(require, exports, module) {
  2. var keymap = {
  3. 'Shift': 16,
  4. 'Control': 17,
  5. 'Alt': 18,
  6. 'CapsLock': 20,
  7. 'BackSpace': 8,
  8. 'Tab': 9,
  9. 'Enter': 13,
  10. 'Esc': 27,
  11. 'Space': 32,
  12. 'PageUp': 33,
  13. 'PageDown': 34,
  14. 'End': 35,
  15. 'Home': 36,
  16. 'Insert': 45,
  17. 'Left': 37,
  18. 'Up': 38,
  19. 'Right': 39,
  20. 'Down': 40,
  21. 'Direction': {
  22. 37: 1,
  23. 38: 1,
  24. 39: 1,
  25. 40: 1
  26. },
  27. 'Del': 46,
  28. 'NumLock': 144,
  29. 'Cmd': 91,
  30. 'CmdFF': 224,
  31. 'F1': 112,
  32. 'F2': 113,
  33. 'F3': 114,
  34. 'F4': 115,
  35. 'F5': 116,
  36. 'F6': 117,
  37. 'F7': 118,
  38. 'F8': 119,
  39. 'F9': 120,
  40. 'F10': 121,
  41. 'F11': 122,
  42. 'F12': 123,
  43. '`': 192,
  44. '=': 187,
  45. '-': 189,
  46. '/': 191,
  47. '.': 190
  48. };
  49. // 小写适配
  50. for (var key in keymap) {
  51. if (keymap.hasOwnProperty(key)) {
  52. keymap[key.toLowerCase()] = keymap[key];
  53. }
  54. }
  55. var aKeyCode = 65;
  56. var aCharCode = 'a'.charCodeAt(0);
  57. // letters
  58. 'abcdefghijklmnopqrstuvwxyz'.split('').forEach(function(letter) {
  59. keymap[letter] = aKeyCode + (letter.charCodeAt(0) - aCharCode);
  60. });
  61. // numbers
  62. var n = 9;
  63. do {
  64. keymap[n.toString()] = n + 48;
  65. } while (--n);
  66. module.exports = keymap;
  67. });