JavaScript 捕獲鍵盤響應
■知識點
當按下鍵盤鍵時,會連續(xù)觸發(fā)多個事件,它們將按順序發(fā)生。
對于字符鍵來說,鍵盤事件的響應順序如下。
keydown
keypress
keyup
對于非字符鍵(如功能鍵或特殊鍵)來說,鍵盤事件的響應順序如下。
keydown
keyup
如果按下字符鍵不放,則keydown和keypress事件將逐個持續(xù)發(fā)生,直至松開按鍵。
如果按下非字符鍵不放,則只有keydown事件持續(xù)發(fā)生,直至松開按鍵。
■實例設計
本例演示如何獲取鍵盤事件響應順序。
<textarea id="textn cols="26" rows="16"></textarea>
<script>
var n = 1; //定義編號變量
var text = document.getElementByld("text"); //獲取文本區(qū)域的引用指針
text.onkeydown = f ; //注冊keydown事件處理函數(shù)
text.onkeyup = f; //注冊keyup事件處理函數(shù)
text.onkeypress = f ; //注冊keypress事件處理函數(shù)
function f(e){ //事件調(diào)用函數(shù)
var e = e || window.event; //標準化事件對象
text.value += (n++) + "=" + e.type +" (keyCode=" + e.keyCode + ")\n"; //捕獲響應信息
}
</script>
點擊加載更多評論>>