keypress事件的问题

来源:互联网 发布:数据库软件哪个好 编辑:程序博客网 时间:2024/05/22 14:02

在使用keypress keydown事件进行键盘监控时发现几个奇怪的问题:

1、不论按下哪个按键,在火狐上监控到的keyCode=0,而在其他浏览器上监控到的keyCode=229

不论是0还是229,这显然是不对的。
通过反复试验,发现可能是 中文输入法 导致的。在英文状态下获取到的keyCode值是正常的,而在中文状态下就发生了异常。

2、keypress 无法监控功能键

在我的需求里,要监控“上、下、左、右”按键,并且屏蔽这4个键的默认操作。
一般屏蔽按键操作的做法是使用keypress 进行监听,获取到这几个键的keyCodereturn false; 来中断默认事件。
然而实际上却发现,keypress无法监控到功能键,这时唯有使用keydown进行替代。

这几个键盘事件执行的顺序是keypress > keydown > keyup

0 0
原创粉丝点击