js onkeypress与onkeydown 事件区别详细说明


Posted in Javascript onDecember 13, 2012

onkeypress 和 onkeydown 是有区别,下面将讲解 onkeypress 与 onkeydown 事件的区别。
onkeypress 事件在用户按下并放开任何字母数字键时发生。但是系统按钮(例如:箭头键、功能键)无法得到识别。
onkeydown 事件在用户按下任何键盘键(包括系统按钮)时发生。
具体区别
1. 一个放开一个没有放开,onkeydown 先于 onkeypress 发生。
2.onkeypress 无法系统按钮。
2.onkeydown 捕获的 keyCode 不区分字母大小,而 onkeypress 区分。

onkeypress是在用户按下并放开任何字母数字键时发生。系统按钮(例如,箭头键和功能键)无法得到识别。
onkeyup 是在用户放开任何先前按下的键盘键时发生。
onkeydown 是在用户按下任何键盘键(包括系统按钮,如箭头键和功能键)时发生。

onkeypress
As of Microsoft® Internet Explorer 4.0, the onkeypress event fires and can be canceled for the following keys:

Letters: A - Z (uppercase and lowercase)
Numerals: 0 - 9
Symbols: ! @ # $ % ^ & * ( ) _ - + = < [ ] { } , . / ? \ | ' ` " ~
System: ESC, SPACEBAR, ENTER

onkeydown
As of Microsoft® Internet Explorer 4.0, the onkeydown event fires for the following keys:

Editing: DELETE, INSERT
Function: F1 - F12
Letters: A - Z (uppercase and lowercase)
Navigation: HOME, END, LEFT ARROW, RIGHT ARROW, UP ARROW, DOWN ARROW
Numerals: 0 - 9
Symbols: ! @ # $ % ^ & * ( ) _ - + = < [ ] { } , . / ? \ | ' ` " ~
System: ESC, SPACEBAR, SHIFT, TAB

As of Internet Explorer 5, the event also fires for the following keys:

Editing: BACKSPACE
Navigation: PAGE UP, PAGE DOWN
System: SHIFT+TAB

As of Internet Explorer 5, this event can be canceled for the following keys and key combinations by specifying event.returnValue=false:

Editing: BACKSPACE, DELETE
Letters: A - Z (uppercase and lowercase)
Navigation: PAGE UP, PAGE DOWN, END, HOME, LEFT ARROW, RIGHT ARROW, UP ARROW, DOWN ARROW
Numerals: 0 - 9
Symbols: ! @ # $ % ^ & * ( ) _ - + = < [ ] { } , . / ? \ | ' ` " ~
System: SPACEBAR, ESC, TAB, SHIFT+TAB

You can cancel all keys that fire the onkeydown event in HTML Applications, including most accelerator keys, such as ALT+F4.

In Internet Explorer 4.0, you cannot cancel the onkeydown event, but you can use the onkeypress event to cancel keyboard events.

两个一起按,可以这样:

if( window.event.shiftKey && event.keyCode==xx) function document_onpress() 
{ 
if(event.keyCode=='13') 
{ 
document.all.div_Line.style.pixelLeft=document.all.div_Line.style.pixelLeft+1; 
document.all.div_Q.style.pixelLeft=document.all.div_Q.style.pixelLeft+1; 
document.all.div_T.style.pixelLeft=document.all.div_T.style.pixelLeft+1; 
}
Javascript 相关文章推荐
网页前台通过js非法字符过滤代码(骂人的话等等)
May 26 Javascript
html文档中的location对象属性理解及常见的用法
Aug 13 Javascript
Javascript实现禁止输入中文或英文的例子
Dec 09 Javascript
node.js中的fs.lchownSync方法使用说明
Dec 16 Javascript
jQuery应用之jQuery链用法实例
Jan 19 Javascript
JavaScript简单获取系统当前时间完整示例
Aug 02 Javascript
详细分析Javascript中创建对象的四种方式
Aug 17 Javascript
JS判断非空至少输入两个字符的简单实现方法
Jun 23 Javascript
Node.JS更改Windows注册表Regedit的方法小结
Aug 18 Javascript
jquery-file-upload 文件上传带进度条效果
Nov 21 jQuery
JavaScript实现多张图片放大镜效果示例【不限定图片尺寸,rem单位】
May 14 Javascript
小程序接口的promise化的实现方法
Dec 11 Javascript
javascript 文件的同步加载与异步加载实现原理
Dec 13 #Javascript
javaScript复制功能调用实现方案
Dec 13 #Javascript
js遍历td tr等html元素
Dec 13 #Javascript
js关闭模态窗口刷新父页面或跳转页面
Dec 13 #Javascript
HTML复选框和单选框 checkbox和radio事件介绍
Dec 12 #Javascript
自己写的兼容ie和ff的在线文本编辑器类似ewebeditor
Dec 12 #Javascript
用javascript模仿ie的自动完成类似自动完成功的表单
Dec 12 #Javascript
You might like
人族 Terran 魔法与科技
2020/03/14 星际争霸
我的论坛源代码(二)
2006/10/09 PHP
php之Smarty模板使用方法示例详解
2014/07/08 PHP
PHP的imageTtfText()函数深入详解
2021/03/03 PHP
jQuery setTimeout()函数使用方法
2013/04/07 Javascript
3分钟写出来的Jquery版checkbox全选反选功能
2013/10/23 Javascript
IE中JS跳转丢失referrer问题的2个解决方法
2014/07/18 Javascript
AngularJs Javascript MVC 框架
2016/06/20 Javascript
详解javascript表单的Ajax提交插件的使用
2016/12/29 Javascript
微信小程序(六):列表上拉加载下拉刷新示例
2017/01/13 Javascript
Bootstrap 3浏览器兼容性问题及解决方案
2017/04/11 Javascript
JavaScript事件方法(实例讲解)
2017/06/27 Javascript
彻底搞懂JavaScript中的apply和call方法(必看)
2017/09/18 Javascript
vue2组件之select2调用的示例代码
2017/10/12 Javascript
利用js-cookie实现前端设置缓存数据定时失效
2019/06/18 Javascript
微信小程序wx.navigateTo中events属性实现页面间通信传值,数据同步
2019/07/13 Javascript
Vue项目中使用jsonp抓取跨域数据的方法
2019/11/10 Javascript
在elementui中Notification组件添加点击事件实例
2020/11/11 Javascript
NodeJS模块Buffer原理及使用方法解析
2020/11/11 NodeJs
[06:45]DOTA2卡尔工作室 英雄介绍幻影长矛手篇
2013/07/12 DOTA
windows系统中python使用rar命令压缩多个文件夹示例
2014/05/06 Python
Python3中使用urllib的方法详解(header,代理,超时,认证,异常处理)
2016/09/21 Python
详解centos7+django+python3+mysql+阿里云部署项目全流程
2019/11/15 Python
装上这 14 个插件后,PyCharm 真的是无敌的存在
2021/01/11 Python
canvas实现高阶贝塞尔曲线(N阶贝塞尔曲线生成器)
2018/01/10 HTML / CSS
Canvas实现保存图片到本地的示例代码
2018/06/28 HTML / CSS
HTML5适合的情人节礼物有纪念日期功能
2021/01/25 HTML / CSS
澳大利亚最受欢迎的美发和美容在线商店:Catwalk
2018/12/12 全球购物
施工安全责任书范本
2014/07/24 职场文书
给病人的慰问信
2015/03/23 职场文书
2015年学校后勤工作总结
2015/04/08 职场文书
学校通报表扬范文
2015/05/04 职场文书
爱心捐款活动总结
2015/05/09 职场文书
复兴之路观后感3000字
2015/06/02 职场文书
pytorch 中autograd.grad()函数的用法说明
2021/05/12 Python
MySQL视图概念以及相关应用
2022/04/19 MySQL