键盘事件处理所有用户敲击键盘的操作,不管是在文本输入区域内还是外部,键盘事件在不同的浏览器中扮演不同的角色。通常这个键盘事件可以在表单元素,如标签元素,窗口和文档。在所有可用的节点元素是可以触发键盘事件,可以获得焦点的元素是可以理解的,使用Tab键时,可以跳到元,你可以使用键盘事件元素(对这些元素的作用属性的值在任何情况下,当tabindex设置为负数时,使用Tab键将不集中)。

键盘事件可以通过参数的事件,事实上所有的jQuery事件可以通过这样的一个参数,该事件是一个对象,包括一些属性,当触发事件可以得到有关事件的价值活动,如使用键盘时可以使用的情况下得到按键的ASCII码值,见下文

(1:keydown)事件是第一键盘点击触发事件,如果用户持续按住键,keydown事件会继续。

复制代码代码如下所示:
$(输入的)。Keydown(函数(事件){
警报(事件。密码);
});


返回的值由键盘可以实现更多的控制这些元素,比如上下键的38,40,37,39。
2:按键()事件是类似的KeyDown,只有一个例外,如果你需要停止键的默认行为,你必须是一个按键事件。

3:KeyUp事件()是最后的事件(在KeyDown事件),和不想要的KeyDown事件。当键盘松动时,此事件只触发一次,因为松开键盘不是连续状态。

复制代码代码如下所示:
$(输入的)。Keyup(函数(){)
警报('keyup功能运行!!!);
});


4:在jQuery,KeyDown和KeyUp事件,按键,都是在一定的顺序执行。

复制代码代码如下所示:
$(输入的)。Keyup(function(){)
console.log('keyup);
});
$(输入的)。Keydown(function(){)
console.log('keydown);
});
$(输入的)。Keypress(function(){)
console.log('keypress);
});


执行的结果是:keydown,按键,Keyup。
此处不使用警报,因为使用警报时,它将防止某些事件发生。这将防止KeyUp事件发生。如果你想测试代码,可以在Firefox下完成。你需要在浏览器上安装Firebug。一定要安装它,因为Firefox是一个开源的浏览器。相信开源软件。

jQuery根据事件的顺序处理具有三种功能的键盘事件:

复制代码代码如下所示:
KeyDown();
Keyup();
按键();


KeyDown()

KeyDown事件被触发时,按下键盘,可以返回到在结合功能假防止违约事件触发浏览器。

Keyup()

的KeyUp事件被触发时,松开按键,那就是,当你按键盘起床

按键()

按键事件被触发时,按键时,我们可以理解它压升力相同的密钥。

我们怎样才能得到A或Z或我按下的后退按钮

键盘事件可以传递参数事件,事实上,可以在一些jQuery事件函数中传递这样的参数。

复制代码代码如下所示:
$(输入的)。Keydown(函数(事件){
警报(事件。密码);
});


在上面的代码的情况下可以帮助我们得到什么,我们追问,他返回ASCII码,例如,上下键,这是38,40,37,39分别。

如果我们要实现Ctrl + Enter,它是Ctrl +返回表。

复制代码代码如下所示:
$(document)。Keypress(function(e){
如果(e.ctrlkey哪= = 13)
$(窗体);
})


其他参考资料:

预备知识

1。数字0键值48…数字9键值57
2键值97…z键值122;键值65…z键值90
3。+关键值43;关键值45;关键值46;退8;Tab键值9;
4.event是全球在IE和Firefox是一个临时对象,需要通过参数

复制代码代码如下所示:
* /
JQuery.extend({
/ * ===========================================================================
函数描述:获取键的值。
调用方法:
JQuery.getKeyNum(事件);
* /
GetKeyNum:功能(e){
无功keynum;
如果(窗口事件){伊江
keynum =的情况下;
}
如果(e.which){ / / / /歌剧浏览器Netscape
keynum =哪;
}
返回keynum;
},
/ * ===========================================================================
函数描述:无论它是整数,限制编辑框只能输入数字。
调用方法:

有待解决的问题:
Tab键不在Firefox下工作。
* /
isint:功能(e){
无功keynum = this.getkeynum(E);
如果(keynum > = 48 keynum <= 57 | | keynum = = 8) / /火狐格判断8下{
返回true;
}
返回false;
},
/ * ===========================================================================
功能说明:判断是否是小数,限位编辑框只能输入数字,只有一小部分。
调用方法:

* /
IsFloat:功能(TXT,e){
无功keynum = this.getkeynum(E);
如果(keynum = 46){ / /输入小数点
如果(txt.value.length = = 0){
返回false;
} else if((txt.value.indexof ')> = 0){
返回false;
其他{ }
返回true;
}
}
如果(this.isint(E)){
返回true;
}
返回false;
}
});