JavaScript 捕获键盘响应
■知识点
当按下键盘键时,会连续触发多个事件,它们将按顺序发生。
对于字符键来说,键盘事件的响应顺序如下。
keydown
keypress
keyup
对于非字符键(如功能键或特殊键)来说,键盘事件的响应顺序如下。
keydown
keyup
如果按下字符键不放,则keydown和keypress事件将逐个持续发生,直至松开按键。
如果按下非字符键不放,则只有keydown事件持续发生,直至松开按键。
■实例设计
本例演示如何获取键盘事件响应顺序。
<textarea id="textn cols="26" rows="16"></textarea>
<script>
var n = 1; //定义编号变量
var text = document.getElementByld("text"); //获取文本区域的引用指针
text.onkeydown = f ; //注册keydown事件处理函数
text.onkeyup = f; //注册keyup事件处理函数
text.onkeypress = f ; //注册keypress事件处理函数
function f(e){ //事件调用函数
var e = e || window.event; //标准化事件对象
text.value += (n++) + "=" + e.type +" (keyCode=" + e.keyCode + ")\n"; //捕获响应信息
}
</script>
点击加载更多评论>>