键盘事件

JavaScript054

键盘事件,第1张

js中的键盘事件包括 onkeydown onkeyup onkeypress

1、onkeydown

键盘按下后就会立即执行的事件,不管是数字键、字母键还是功能键都能触发这个事件。

onkeydown有个特点:键盘一直按下会不停地触发事件,连续触发时,第一次和第二次的触发时间间隔会比较长一点,后面触发速度就非常的快。这种设计是为了防止误操作的发生。

2、onkeyup

键盘松开后立马执行的事件。

3、onkeypress

键盘按键被按下并释放一个键时执行。数字键、字母键能触发事件,但是功能键按下后不会触发这个事件,比如Esc、Tab、CapsLock、Shift、Ctrl、Alt、Delete、Backspace、四个方向键。

补充一些常用按键对应的Unicode编码:

Enter:13

space:32

Left:37

Up:38

Right:39

Down:40

<script type="text/javascript" language=JavaScript charset="UTF-8">

document.onkeydown=function(event){

var e = event || window.event || arguments.callee.caller.arguments[0]

if(e &&e.keyCode==27){ // 按 Esc

//要做的事情

}

if(e &&e.keyCode==113){ // 按 F2

//要做的事情

}

if(e &&e.keyCode==13){ // enter 键

//要做的事情

}

}

</script>

只要你定义了这些键的动作,你在浏览器里按下这些键就会响应,兼容目前所有浏览器。

我做了一个jsp页面,里面有个搜索的功能,搜索是一个放大镜模样的图片,我给了个链接去执行函数,具体代码是:<span onclick="_search()"><img src="images/search.gif"  border="0">现在用鼠标点这个搜索图片是没问题的

有搜索条件输入框不?

有的话就在输入框加上onkeypress="if (event.keyCode == 13) _search()"

没有的话就给body加上面这段