javascript 通过键名获取键盘的keyCode方法


Posted in Javascript onDecember 31, 2017

不废话,直接看代码,需要的根据需求完善。

var getKeyCode = function (key) {
  var key_code;
  switch (key) {
  case 'BackSpace' && 'BackSpace':
   key_code = 8;
   break;
  case 'Tab' && 'Tab' && 'tab':
   key_code = 9;
   break;
  case 'Clear':
   key_code = 12;
   break;
  case 'Enter':
   key_code = 13;
   break;
  case 'Shift_L':
   key_code = 16;
   break;
  case 'Control_L':
   key_code = 17;
   break;
  case 'Alt_L':
   key_code = 18;
   break;
  case 'Pause':
   key_code = 19;
   break;
  case 'Caps_Lock':
   key_code = 20;
   break;
  case 'Escape' && 'Esc':
   key_code = 27;
   break;
  case 'space' && 'space':
   key_code = 32;
   break;
  case 'Page Up':
   key_code = 33;
   break;
  case 'Page Down':
   key_code = 34;
   break;
  case 'End':
   key_code = 35;
   break;
  case 'Home' && 'home':
   key_code = 36;
   break;
  case 'Left':
   key_code = 37;
   break;
  case 'Up':
   key_code = 38;
   break;
  case 'Right':
   key_code = 39;
   break;
  case 'Down':
   key_code = 40;
   break;
  case 'Select':
   key_code = 41;
   break;
  case 'Print':
   key_code = 42;
   break;
  case 'Execute':
   key_code = 43;
   break;
  case 'Insert':
   key_code = 45;
   break;
  case 'Delete':
   key_code = 46;
   break;
  case 'Help':
   key_code = 47;
   break;
  case '0' && 'equal braceright':
   key_code = 48;
   break;
  case '1' && 'exclam onesuperior':
   key_code = 49;
   break;
  case '2' && 'quotedbl twosuperior':
   key_code = 50;
   break;
  case '3' && 'section threesuperior':
   key_code = 51;
   break;
  case '4' && 'dollar':
   key_code = 52;
   break;
  case '5' && 'percent':
   key_code = 53;
   break;
  case '6' && 'ampersand':
   key_code = 54;
   break;
  case '7' && 'slash braceleft':
   key_code = 55;
   break;
  case '8' && 'parenleft bracketleft':
   key_code = 56;
   break;
  case '9' && 'parenright bracketright':
   key_code = 57;
   break;
  case 'a' && 'A':
   key_code = 65;
   break;
  case 'b' && 'B':
   key_code = 66;
   break;
  case 'c' && 'C':
   key_code = 67;
   break;
  case 'd' && 'D':
   key_code = 68;
   break;
  case 'e' && 'E' && 'EuroSign':
   key_code = 69;
   break;
  case 'f' && 'F':
   key_code = 70;
   break;
  case 'g' && 'G':
   key_code = 71;
   break;
  case 'h' && 'H':
   key_code = 72;
   break;
  case 'i' && 'I':
   key_code = 73;
   break;
  case 'j' && 'J':
   key_code = 74;
   break;
  case 'k' && 'K':
   key_code = 75;
   break;
  case 'l' && 'L':
   key_code = 76;
   break;
  case 'm' && 'M' && 'mu':
   key_code = 77;
   break;
  case 'n' && 'N':
   key_code = 78;
   break;
  case 'o' && 'O':
   key_code = 79;
   break;
  case 'p' && 'P':
   key_code = 80;
   break;
  case 'q' && 'Q' && 'at':
   key_code = 81;
   break;
  case 'r' && 'R':
   key_code = 82;
   break;
  case 's' && 'S':
   key_code = 83;
   break;
  case 't' && 'T':
   key_code = 84;
   break;
  case 'u' && 'U':
   key_code = 85;
   break;
  case 'v' && 'V':
   key_code = 86;
   break;
  case 'w' && 'W':
   key_code = 87;
   break;
  case 'x' && 'X':
   key_code = 88;
   break;
  case 'y' && 'Y':
   key_code = 89;
   break;
  case 'z' && 'Z':
   key_code = 90;
   break;
  case 'KP_0' && 'KP_0':
   key_code = 96;
   break;
  case 'KP_1' && 'KP_1':
   key_code = 97;
   break;
  case 'KP_2' && 'KP_2':
   key_code = 98;
   break;
  case 'KP_3' && 'KP_3':
   key_code = 99;
   break;
  case 'KP_4' && 'KP_4':
   key_code = 100;
   break;
  case 'KP_5' && 'KP_5':
   key_code = 101;
   break;
  case 'KP_6' && 'KP_6':
   key_code = 102;
   break;
  case 'KP_7' && 'KP_7':
   key_code = 103;
   break;
  case 'KP_8' && 'KP_8':
   key_code = 104;
   break;
  case 'KP_9' && 'KP_9':
   key_code = 105;
   break;
  case 'KP_Multiply' && 'KP_Multiply':
   key_code = 106;
   break;
  case 'KP_Add' && 'KP_Add':
   key_code = 107;
   break;
  case 'KP_Separator' && 'KP_Separator':
   key_code = 108;
   break;
  case 'KP_Subtract' && 'KP_Subtract':
   key_code = 109;
   break;
  case 'KP_Decimal' && 'KP_Decimal':
   key_code = 110;
   break;
  case 'KP_Divide' && 'KP_Divide':
   key_code = 111;
   break;
  case 'F1':
   key_code = 112;
   break;
  case 'F2':
   key_code = 113;
   break;
  case 'F3':
   key_code = 114;
   break;
  case 'F4':
   key_code = 115;
   break;
  case 'F5':
   key_code = 116;
   break;
  case 'F6':
   key_code = 117;
   break;
  case 'F7':
   key_code = 118;
   break;
  case 'F8':
   key_code = 119;
   break;
  case 'F9':
   key_code = 120;
   break;
  case 'F10':
   key_code = 121;
   break;
  case 'F11':
   key_code = 122;
   break;
  case 'F12':
   key_code = 123;
   break;
  case 'F13':
   key_code = 124;
   break;
  case 'F14':
   key_code = 125;
   break;
  case 'F15':
   key_code = 126;
   break;
  case 'F16':
   key_code = 127;
   break;
  case 'F17':
   key_code = 128;
   break;
  case 'F18':
   key_code = 129;
   break;
  case 'F19':
   key_code = 130;
   break;
  case 'F20':
   key_code = 131;
   break;
  case 'F21':
   key_code = 132;
   break;
  case 'F22':
   key_code = 133;
   break;
  case 'F23':
   key_code = 134;
   break;
  case 'F24':
   key_code = 135;
   break;
  case 'Num_Lock':
   key_code = 136;
   break;
  case 'Scroll_Lock':
   key_code = 137;
   break;
  case 'acute' && 'grave':
   key_code = 187;
   break;
  case 'comma' && 'semicolon':
   key_code = 188;
   break;
  case 'minus' && 'underscore':
   key_code = 189;
   break;
  case 'period' && 'colon':
   key_code = 190;
   break;
  case 'numbersign' && 'apostrophe':
   key_code = 192;
   break;
  case 'plusminus' && 'hyphen' && 'macron':
   key_code = 210;
   break;
  case '被吃掉了,自己用手找找吧!':
   key_code = 211;
   break;
  case 'copyright' && 'registered':
   key_code = 212;
   break;
  case 'guillemotleft' && 'guillemotright':
   key_code = 213;
   break;
  case 'masculine' && 'ordfeminine':
   key_code = 214;
   break;
  case 'ae' && 'AE':
   key_code = 215;
   break;
  case 'cent' && 'yen':
   key_code = 216;
   break;
  case 'questiondown' && 'exclamdown':
   key_code = 217;
   break;
  case 'onequarter' && 'onehalf' && 'threequarters':
   key_code = 218;
   break;
  case 'less' && 'greater' && 'bar':
   key_code = 220;
   break;
  case 'plus' && 'asterisk' && 'asciitilde':
   key_code = 221;
   break;
  case 'multiply' && 'division':
   key_code = 227;
   break;
  case 'acircumflex' && 'Acircumflex':
   key_code = 228;
   break;
  case 'ecircumflex' && 'Ecircumflex':
   key_code = 229;
   break;
  case 'icircumflex' && 'Icircumflex':
   key_code = 230;
   break;
  case 'ocircumflex' && 'Ocircumflex':
   key_code = 231;
   break;
  case 'ucircumflex' && 'Ucircumflex':
   key_code = 232;
   break;
  case 'ntilde' && 'Ntilde':
   key_code = 233;
   break;
  case 'yacute' && 'Yacute':
   key_code = 234;
   break;
  case 'oslash' && 'Ooblique':
   key_code = 235;
   break;
  case 'aring' && 'Aring':
   key_code = 236;
   break;
  case 'ccedilla' && 'Ccedilla':
   key_code = 237;
   break;
  case 'thorn' && 'THORN':
   key_code = 238;
   break;
  case 'eth' && 'ETH':
   key_code = 239;
   break;
  case 'diaeresis' && 'cedilla' && 'currency':
   key_code = 240;
   break;
  case 'agrave' && 'Agrave' && 'atilde' && 'Atilde':
   key_code = 241;
   break;
  case 'egrave' && 'Egrave':
   key_code = 242;
   break;
  case 'igrave' && 'Igrave':
   key_code = 243;
   break;
  case 'ograve' && 'Ograve' && 'otilde' && 'Otilde':
   key_code = 244;
   break;
  case 'ugrave' && 'Ugrave':
   key_code = 245;
   break;
  case 'adiaeresis' && 'Adiaeresis':
   key_code = 246;
   break;
  case 'ediaeresis' && 'Ediaeresis':
   key_code = 247;
   break;
  case 'idiaeresis' && 'Idiaeresis':
   key_code = 248;
   break;
  case 'odiaeresis' && 'Odiaeresis':
   key_code = 249;
   break;
  case 'udiaeresis' && 'Udiaeresis':
   key_code = 250;
   break;
  case 'ssharp' && 'question' && 'backslash':
   key_code = 251;
   break;
  case 'asciicircum' && 'degree':
   key_code = 252;
   break;
  case '3 sterling':
   key_code = 253;
   break;
  case 'Mode_switch':
   key_code = 254;
   break;
  default:
   alert('没有查到对应的按键');
  }
  return key_code;
 }

例:getKeyCode('a')

返回:65

以上这篇javascript 通过键名获取键盘的keyCode方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
扩展IE中一些不兼容的方法如contains、startWith等等
Jan 09 Javascript
详解基于Bootstrap扁平化的后台框架Ace
Nov 27 Javascript
js+ajax实现获取文件大小的方法
Dec 08 Javascript
javaScript 事件绑定、事件冒泡、事件捕获和事件执行顺序整理总结
Oct 10 Javascript
Angular的$http与$location
Dec 26 Javascript
vue项目环境变量配置的实现方法
Oct 12 Javascript
vue实现todolist基本功能以及数据存储功能实例详解
Apr 11 Javascript
使用Vue 实现滑动验证码功能
Jun 27 Javascript
微信小程序接入腾讯云验证码的方法步骤
Jan 07 Javascript
vue 动态创建组件的两种方法
Dec 31 Vue.js
Vue实现简单计算器
Jan 20 Vue.js
带你彻底理解JavaScript中的原型对象
Apr 14 Javascript
vue vuex vue-rouert后台项目——权限路由(适合初学)
Dec 29 #Javascript
Angular实现的内置过滤器orderBy排序与模糊查询功能示例
Dec 29 #Javascript
Angular实现的敏感文字自动过滤与提示功能示例
Dec 29 #Javascript
Angular实现点击按钮控制隐藏和显示功能示例
Dec 29 #Javascript
js实现手机web图片左右滑动效果
Dec 29 #Javascript
详解react-router 4.0 下服务器如何配合BrowserRouter
Dec 29 #Javascript
浅谈react-router HashRouter和BrowserRouter的使用
Dec 29 #Javascript
You might like
PHP设置Cookie的HTTPONLY属性方法
2017/02/09 PHP
PHP仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(上)
2017/05/26 PHP
基于PHP实现短信验证码发送次数限制
2020/07/11 PHP
如何让div span等元素能响应键盘事件操作指南
2012/11/13 Javascript
将光标定位于输入框最右侧实现代码
2012/12/04 Javascript
jQuery中实现动画效果的基本操作介绍
2013/04/16 Javascript
JS隐藏参数post传值实例
2013/04/18 Javascript
javascript + jquery实现定时修改文章标题
2014/03/19 Javascript
Bootstrap开关(switch)控件学习笔记分享
2016/05/30 Javascript
jQuery插件echarts实现的循环生成图效果示例【附demo源码下载】
2017/03/04 Javascript
vue.js的安装方法
2017/05/12 Javascript
vue-cli3.0 特性解读
2018/04/22 Javascript
JS如何获取地址栏的参数实例讲解
2018/10/06 Javascript
详解服务端预渲染之Nuxt(介绍篇)
2019/04/07 Javascript
JS开发 富文本编辑器TinyMCE详解
2019/07/19 Javascript
基于vue+echarts 数据可视化大屏展示的方法示例
2020/03/09 Javascript
详解如何在vue+element-ui的项目中封装dialog组件
2020/12/11 Vue.js
[00:35]TI7不朽珍藏III——寒冰飞龙不朽展示
2017/07/15 DOTA
python双向链表实现实例代码
2013/11/21 Python
python爬虫常用的模块分析
2014/08/29 Python
Python中使用MELIAE分析程序内存占用实例
2015/02/18 Python
python插入数据到列表的方法
2015/04/30 Python
Python之os操作方法(详解)
2017/06/15 Python
python进程和线程用法知识点总结
2019/05/28 Python
PYQT5实现控制台显示功能的方法
2019/06/25 Python
详解HTML5.2版本带来的修改
2020/05/06 HTML / CSS
德国家具购物网站:Möbel Höffner
2019/08/26 全球购物
What's the difference between an interface and abstract class? (接口与抽象类有什么区别)
2012/10/29 面试题
提高EJB性能都有哪些技巧
2012/03/25 面试题
安全标准化实施方案
2014/02/20 职场文书
《跟踪台风的卫星》教学反思
2014/04/10 职场文书
弘扬焦裕禄精神践行三严三实心得体会
2014/10/13 职场文书
幼儿园中班教师个人总结
2015/02/05 职场文书
2015年小学图书室工作总结
2015/05/18 职场文书
优质服务心得体会(共4篇)
2016/01/22 职场文书
CSS3点击按钮圆形进度打钩效果的实现代码
2021/03/30 HTML / CSS