onkeyup,onkeydown和onkeypress

onkeyup,onkeydown和onkeypress

如下一段代码:

<html>
 <script>
  function checkForm(){
   if(event.keyCode ==13){
     event.keyCode =9;
   }
  }
 </script>
 <body>
  <form name ="form1">
   <input type="text" name = "text1" onkeydown = "checkForm()">
   <input type="button" name = "button1" value="按钮">
  </form>
 </body>
</html>

当按下回车时,焦点从文本框移到按钮上。如果把它换成“onkeypress”,焦点不会转移,也不会失去。但是如果换成“onkeyup”,则失去焦点,页面重新载入。msdn上有三者的区别:

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

(但是试验中,onkeypress好像对箭头和功能键都能识别,奇怪!)。对于onkeyup为什么会重新刷新页面,原因不详。猜想是不是浏览器对于onkeyup有默认的执行事件,其默认的执行事件就是重新载入页面。有待以后了解!还有一点要注意,就是键盘上的同一个值,可能对应的onkeypress和onkeydown(onkeyup一般和onkeydown一样)不同,比如小键盘上的“1”,对应的onkeypress的值为49,而onkeydown和onkeyup则都是97!msdn上有个例子,可以很好的查看不同的键盘值对应的不同事件值。url:http://msdn.microsoft.com/library/en-us/dnacc/html/Example3_Calculator.asp

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/linhonglong/archive/2006/03/07/618125.aspx

分类: Web前端

时间: 2024-10-07 11:14:43

onkeyup,onkeydown和onkeypress的相关文章

js中onkeyup、onkeydown与onkeypress的区别

本文详细介绍了onkeyup.onkeydown与onkeypress三者在用法上的区别,通过实例了解三者在响应事件时的不同,有需要的朋友参考学习下. 说明:onkeyup.onkeydown与onkeypress三者在事件的响应上各有不同:onkeydown .onkeypress事件响应时,输入的字符并没有被系统接受,而响应onkeyup时,输入流已经被系统接受 msdn上有三者的区别介绍,这里摘抄一下: 名称 说明 onkeypress 这个事件在用户按下并放开任何字母数字键时发生.系统按

[转载]onkeydown、onkeypress、onkeyup、onblur、o

转载链接: http://blog.sina.com.cn/s/blog_697b2dc101014ktb.html onkeydown:按下任何键(字母.数字.系统.tab等)都能触发,且对于字母不区分大小写: onkeypress:按下字母.数字键时触发,且对于字母区分大小写; onkeyup:相应的键和onkeydown相同,区别是相应顺序的不同 前三者的相应顺序为:onkeydown ---->onkeypress----->onkeyup onblur:鼠标失去焦点 onfocus:

onkeydown、onkeypress和onkeyup

onkeydown和onkeyup可以响应任何按键,(小键盘)同样的字符返回的键码是一样的: onkeypress只能响应字符按键,(小键盘)同样的字符返回的键码是不一样的 IE9以下不支持charCode和which keyCode和which在任何键盘事件下都有返回值 charCode只有在onkeypress事件下都有返回值 在线测试:http://www.asquare.net/javascript/tests/KeyCode.html

onkeypress与onkeydown及 oncopy和onpaste 事件区别详细说明

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

浅析OnKeyPress事件和OnKeyDownOnKeyUp事件

OnKeyPress事件 OnKeyPress事件是在用户按下键盘上任何一个可打印的字符时发生,只有能接收键盘输入的组件才有OnKeyPress事件.我们常常利用OnKeyPress事件截取在编辑框和组合框组件中所输入的击键,还可以立即测试击键的有效性或在字符输入时对其进行一定的格式处理. 例如,在TEdit组件上捕获OnKeyPress事件,判断输入的是否是小写字母,如果是,将其转换为大写字母,代码如下: void __fastcall TForm1::Edit1KeyPress(TObjec

03JavaScript程序设计修炼之道_2019-07-02_20-11-09_ 2019-07-02_21-28-28 常用事件(onkeydown...)、offset、client、scroll

22key-event.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Com

html5常用标签

一.主体结构 header 页面头部,不同与<head></head> aside 边栏 nav 外部链接集合 section 章节或段落 article 类似文章.摘要或留言POST等形式的记录(一般搭配内嵌头部.尾部.底部结构使用) hggroup 类似子标题,标题信息.可选标题.TAG标签这样的数据,还是英文更好理解一些,heading of a section address 联系信息,一般用在article或body锚元素周围 footer 页脚 二.HTML 5元素标记

Thymeleaf3.0简介

thymeleaf的初次使用(带参请求以及调用带参js方法) 之前对于前端框架接触较少,第一次接触thymeleaf,虽说看起来并不复杂但我还是花费了好一会儿才弄懂. 话不多少下面就简单说一下我在项目中的应用. 首先是java代码 controller层 将需要在前端展示的信息放入model中: @RequestMapping("getAll") public String getAll(Model model){ List<ScheduleJob> list = sche

js键盘事件全面控制

主要分四个部分第一部分:浏览器的按键事件第二部分:兼容浏览器第三部分:代码实现和优化第四部分:总结 第一部分:浏览器的按键事件 用 js实现键盘记录,要关注浏览器的三种按键事件类型,即keydown,keypress和keyup,它们分别对应onkeydown. onkeypress和onkeyup这三个事件句柄.一个典型的按键会产生所有这三种事件,依次是keydown,keypress,然后是按键释放时 候的keyup. 在这3种事件类型中,keydown和keyup比较底层,而 keypre