有关键盘事件

来源:互联网 发布:sql修改数据库名字 编辑:程序博客网 时间:2024/05/16 06:29

onkeydown : 当键盘按键按下的时候触发
onkeyup : 当键盘按键抬起的时候触发

event.keyCode : 数字类型 键盘按键的值 键值
ctrlKey,shiftKey,altKey :布尔值,当一个事件发生的时候,如果ctrl || shift || alt 是按下的状态,返回true,否则返回false

例一:

<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>无标题文档</title><script>document.onkeydown = function(ev) {    var ev = ev || event;    alert(ev.keyCode);  //当按下键盘按键的时候,弹出相应的keyCode值}document.onclick = function(ev) {    var ev = ev || event;    alert(ev.ctrlKey);//点击文档,要是按住了Ctrl键,弹出true,没有按住,弹出false}</script></head><body></body></html>

利用键盘事件实现一些小功能,模拟QQ的Ctrl+Enter发送消息:
例二:

<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>无标题文档</title><script>window.onload = function() {    var oText = document.getElementById('text1');    var oUl = document.getElementById('ul1');    oText.onkeyup = function(ev) {        var ev = ev || event;        //alert(this.value);        if ( this.value != '' ) {            /*这里注意,不能写成ev.keyCode==13&&ev.keyCode==17(ctrl的键值:17,enter的键值13)*/            if (ev.keyCode == 13 && ev.ctrlKey) {                var oLi = document.createElement('li');                oLi.innerHTML = this.value;                if ( oUl.children[0] ) {                    oUl.insertBefore( oLi, oUl.children[0] );                } else {                    oUl.appendChild( oLi );                }               }        }    }}</script></head><body>    <input type="text" id="text1" />    <ul id="ul1"></ul></body></html>
0 0
原创粉丝点击