键盘事件keydown、keypress、keyup随笔整理总结

英文输入法:

事件触发顺序:keydown - > keypress - > keyup

中文输入法:

firfox:输入触发keydown,回车确认输入触发keyup

chrome:输入触发keydown、keyup,回车确认输入只触发keydown

IE:输入触发keydown、keyup,回车确认输入触发keydown,keyup

Safari:输入触发keydown、keyup,回车确认输入触发keydown,keyup

opera:输入触发keydown、keyup,回车确认输入触发keydown,keyup

keypress事件不能对系统功能键(例如:后退、删除等,其中对中文输入法不能有效响应)进行正常的响应,

keydown和keyup均可以对系统功能键进行有效的拦截,但事件截获的位置不同。

键盘中的键分为字符(可打印)键和功能键(不可打印),系统功能键包括如下:

Esc、Tab、Caps Lock、Shift、Ctrl、Alt、Enter、Backspace、Print Screen、Scroll Lock、Pause Break、Insert、Delete、Home、End、Page Up、Page Down, F1through F12,Num Lock、The Arrow Keys。

keypress响应系统功能键总结:

Firefox:支持 Esc、Enter、Backspace、Pause Break、Insert、Delete、Home、End、Page Up、Page Down、F1 throughF12、The Arrow Keys

Chrome:支持Enter

Oprea:支持Enter

Safari:支持Enter

IE:支持Esc、Enter

ps:

firefox:上下左右键会触发kepress.

chrome: 上下左右键不会触发kepress.

oprea:上下左右键不会触发kepress.

safari:上下左右键不会触发kepress.

IE:上下左右键不会触发kepress.

=====================================================================

keyCode(键码), which, charCode(字符编码)

keydown: 获得keyCode, charCode=0

keypress: 字符(英文区分大小写+数字  / *, .  ...等非功能键),keyCode=0 ,获取charCode值,反之获取keyCode, charCode=0

keyup: 获得keyCode, charCode=0

jquery 中 event.which =original.charCode != null ? original.charCode : original.keyCode;

总结:回车、上下左右、等功能键keydown、keypress、keyup都获取keyCode,并且值相等。

开启大写情况,keydown、keypress(字母,主键盘数字、回车)、keyup,which值相等,小写kepress获取的which不同于keypress、keyup。

keypress事件的keyCode对字母的大小写敏感,而keydown、keyup事件不敏感

keypress事件的which值无法区分主键盘上的数字键和附键盘数字键的,而keydown、keyup的which值对主附键盘的数字键敏感。

IE(ie9以下)只有一个属性KeyCode属性,当为keydown和keyup 事件是,keycode属性表示你具体按下的键(也称为virtualkeycode),当捕捉的是keypress事件时keyCode属性指的是你键入的字符(character code)

标准浏览器中情况有些不同,event对象包含一个keyCode属性和一个charCode属性,keydown和keyup事件的时候,keyCode表示的就是你具体按的键,charCode为0;当捕捉的是keypress事件时,keyCode为0,charCode指的是你按下的字符,鉴于IE和FF中的区别,如果你比较懒的话,建议只使用keydow和keyup事件

转载地址:http://www.cnblogs.com/silence516/archive/2013/01/25/2876611.html

键盘事件keydown、keypress、keyup随笔整理总结相关推荐

  1. 无线端不响应键盘事件(keydown,keypress,keyup)

    今天在项目时,在android手机上使用输入法的智能推荐的词的话,不会触发keyup事件,一开始想到在focus时使用一个定时器,每隔100ms检测输入框的值是否发生了改变,如果改变了就作对应的处理, ...

  2. [js] 键盘事件 keydown keypress

    不是所有标签都可以直接绑定触发 键盘事件 只有可以获取焦点的标签 可以 直接绑定触发 键盘事件 可以获取焦点的常见标签: input select>option textarea button ...

  3. 键盘事件keydown()与keyup()

    1.键盘按下事件:keydown() 是在键盘按下就会触发 2.键盘弹起事件:keyup() 是在键盘松手就会触发 <h1>keydown()与keyup()事件</h1>&l ...

  4. java keydown_键盘事件keydown、keypress、keyup随笔整理总结

    英文输入法: 事件触发顺序:keydown - > keypress - > keyup 中文输入法: firfox:输入触发keydown,回车确认输入触发keyup chrome:输入 ...

  5. python绑定按键pageup键_键盘事件keydown、keypress、keyup随笔整理总结(摘抄)

    原文1:http://www.cnblogs.com/silence516/archive/2013/01/25/2876611.html 原文2:http://www.cnblogs.com/leo ...

  6. keyup常用事件_键盘事件keydown、keypress、keyup随笔整理总结

    键盘 英文输入法: 事件触发顺序:keydown - > keypress - > keyup 中文输入法: firfox:输入触发keydown,回车确认输入触发keyup chrome ...

  7. 键盘事件keydown、keypress、keyup随笔整理总结(摘抄)

    原文1:http://www.cnblogs.com/silence516/archive/2013/01/25/2876611.html 原文2:http://www.cnblogs.com/leo ...

  8. 【c#】键盘事件(keypress keydown keyup)

    [前言] 最近小编在学习c#视频的时候遇到了小小的阻力,对于键盘的keydown,keyup,keypress事件不是很理解,有一点小小的强迫症,让我们对他们进行了一段研究,终于有一个进展,但是仅仅代 ...

  9. 键盘事件keydown、keypress、keyon区别

    键盘事件keydown.keypress.keyon区别 最近刚学习键盘事件,在敲相关案例时,发现有点混淆,思考并查阅资料后发现有些小点很微妙,值得记录以下! 当同时写下这几个事件时,其优先顺序为ke ...

最新文章

  1. Python的零基础超详细讲解(第二天)-Python的基础语法1
  2. 2014迅雷校园招聘笔试题答案
  3. rocketMq-producer介绍
  4. RS-232串口线与以太网的八芯双绞线的对比,为什么不使用串口线来连接电脑和路由器?
  5. 《上海市数据中心建设导则(2021版)》
  6. API函数MessageBox的参数与返回值
  7. DOM Element对象的offsetXXX方法
  8. UE4 HTC VIVE - 番外篇 - 局域网联机三
  9. java 加锁_Java并发之synchronized深入
  10. 微服务中的面向切面编程和更多模式
  11. 如何用 Python 快速开发一个区块链数据结构?
  12. linux mysql查看数据库编码_MySQL查看和修改字符编码的实现方法
  13. dell台式计算机主板电池,怎么更换主板电池 主板电池更换方法【步骤详解】
  14. vscode vue项目设置代理为locahost 始终无法连接本地项目
  15. java输出空心菱形 用斜杠,java基础知识总结1
  16. Android编程怎么打开,安卓手机如何开启开发者模式?简单三步骤教你解决!
  17. Win系统 - 电脑一直停在正在关机的界面怎么办?
  18. 云打码案例 python
  19. 如何招聘软件测试,ÈçºÎÕÐƸµ½µÄÈí¼þ²âÊÔ¹¤³Ìʦ£¿
  20. Android | 说说Presentation

热门文章

  1. Tomcat 解决“At least one JAR was scanned for TLDs yet contained no TLDs”问题
  2. 低能耗配电开关 USB过流保护芯片USB限流保护SY6280
  3. 【分子结构】原子结构总结——2015年9月12日
  4. linux脚本创建快捷方式,批处理BAT创建快捷方式
  5. 淘宝电商:淘宝卖家如何快速提升店铺自然搜索流量?
  6. WPT2F42-6/TR PNP双极功率晶体管WILLSEM
  7. 个人大数据征信查询浅谈与撸待现象
  8. zookeeper疑难杂症
  9. android 波斯语,android – 如何在视图中显示波斯语(波斯语)数字
  10. BZOJ 2140: 稳定婚姻 Tarjan Map