原生js的event对象有三个键盘事件的值:
1) charCode: 被点击键的Unicode值
2) keyCode: 被点击键的ASCII十进制值
3) which: 字母数字键的charCode或者keyCode,具体可以自己试试

Mootools的event被封装后,统一成为code和key:

event.code = event.which || event.keyCode;
event.key = String.fromCharCode(code).toLowerCase();

写了个方法,用于控制数字输入

// 价格字符串格式(小数点后最多两位)
$$('.jsForPrice').addEvents({
'keypress': function(ev){
var result;
if(this.val().length === 0 || this.val().test('\\.')){// 只能有1个点号
result = ev.code>=48&&ev.code<=57 || ev.code==8;
}else{
result = ev.code>=48&&ev.code<=57||ev.code==8||ev.code==46;
}
return result;
},
'keyup': function(ev){
if(this.val().test('\\.')){
if(this.val().split('.')[1].length>2){
this.val(this.val().substring(0, this.val().length-1))
}
}
//console.log(this.val().test('^[0-9]+(\\.[0-9]{1,2}){0,1}$'))
}
});

参考:stackoverflow

关于js的keyCode的更多相关文章

  1. js & option keycode

    js & option keycode js get option keycode https://keycode.info/ option https://github.com/wesbos ...

  2. JS键盘KEYCODE值参考

    keycode 1 = 鼠标左键keycode 2 = 鼠标右键keycode 3 = Cancelkeycode 4 = 鼠标中键keycode 8 = BackSpace keycode 9 = ...

  3. js通过keyCode值判断单击键盘上某个键,然后触发指定的事件

    当单击按键时触发事件    document.onkeydown = function (e) {             e = e || event;             if (e.keyC ...

  4. JS中的event 对象详解

    JS中的event 对象详解   JS的event对象 Event属性和方法:1. type:事件的类型,如onlick中的click:2. srcElement/target:事件源,就是发生事件的 ...

  5. JS事件及其兼容用法

    JavaScript与HTML之间的交互是通过事件实现的.事件,就是文档或浏览器窗口中发生的一些特定的交互瞬间. 1.事件流:描述的是从页面中接收事件的顺序. IE提出的事件冒泡流:事件开始由最具体的 ...

  6. js & enter

    js & enter keycode function (e) { if (e.which === 13 || e.keyCode === 13) { //code to execute he ...

  7. jquery远程班备忘

    基础第一课: 1. $(obj)获取的是一个集合,因此length最小是1, jquery,如果元素不存在,也不会报错,可通过$(obj).length<1就可以查看该元素是否存在. 2. at ...

  8. js获取键盘按下的键值event.keyCode,event.charCode,event.which的兼容性

    js获取键盘按下的键值有event.keyCode,event.charCode和event.which 其中: 谷歌浏览器对event.keyCode,event.charCode和event.wh ...

  9. angular js 的 ng-keyup 监听 keydown keyup事件获取 keyCode

    参考这个页面.http://www.angularjshub.com/examples/eventhandlers/keyboardevents/ Html页面代码: <input ng-mod ...

随机推荐

  1. CSS样式:覆盖规则

    规则一:由于继承而发生样式冲突时,最近祖先获胜. CSS的继承机制使得元素可以从包含它的祖先元素中继承样式,考虑下面这种情况: <html> <head> <title& ...

  2. eclipse mars4.5安装hibernate开发环境

    在安装hibernate插件过程中遇到下面前三张图片所示的现象是没关系的,只要最后能看到第四张图的结果就说明安装成功,我一开始不知道走了好多弯路.我用的eclipse mars4.5,采用了在线安装的 ...

  3. 基于用户登陆的struts2中action的分类详解

    在struts2中action的分类有:继承 ActionSupport 实现 Action,模型驱动(ModelDriven)的 Action,多方法的 Action三种方式. 1.继承 Actio ...

  4. angularJs 模拟jQuery中的this

    在angularJs中,this指向$scope!可以$event配合使用$(event.target)实现,代码如下: HTML部分: <p ng-click="testClick( ...

  5. docker 基本学习

    Docker的应用场景: 加速本地开发和构建流程,使其更加高效.更加轻量化.本地开发人员可以构建.运行并分享Docker容器.容器可以在开发环境中构建,然后轻松地提交到测试环境中,并最终进入生产环境. ...

  6. 使用wsgiref库diy简单web架构

    1. 了解CGI和WSGI (1)CGI CGI(Common Gateway Interface)通用网关接口,即接口协议,前端向服务器发送一个URL(携带请求类型.参数.cookie等信息)请求, ...

  7. Microsoft Office Visio 2013 (安装 + 激活)

    Visio是一款能处理复杂信息.系统和流程进行可视化.分析和交流的软件,从“office 2003”以后,Visio作为一个单独软件发行,不再集成于office办公软件. 工具/原料 Visio 电脑 ...

  8. Thinking in Java 4th(Java编程思想第四版)文档、源码、习题答案

    Thinking in Java 4th 中.英文两版pdf文档,书中源码及课后习题答案.链接:https://pan.baidu.com/s/1BKJdtgJ3s-_rN1OB4rpLTQ 密码:2 ...

  9. iOS6 自动布局 入门–Auto Layout

    目前为止,即使你的界面设计是在合理的复杂度内,你也必须要为之写许多代码来适应变化的布局.现在我相信你会很高兴听到这种情况将不会发生了-对于iPhone与iPad IOS6 带来了一个非常了不起的特征: ...

  10. 杂项-公司-百科:伯克希尔·哈撒韦-un

    ylbtech-杂项-公司-百科:伯克希尔·哈撒韦 伯克希尔·哈撒韦公司由沃伦·巴菲特(Warren Buffett)创建于1956年,是一家主营保险业务,在其他许多领域也有商业活动的公司.其中最重要 ...