Home > 语言编程 > [Javascript]禁用特定的键盘按键事件

[Javascript]禁用特定的键盘按键事件

一个奇怪的需求,禁用来自用户键盘输入的特殊按键事件,例如禁用Escape、Backspace、F5等按键。主要用于减少用户的错误输入导致的数据错误等问题,同时需要在页面加载关闭重新加载期间有效。
实现方法:
1.页面加载和关闭时用window.onkeydown事件处理,页面加载完成后可以用jquery的document.ready()来处理。
2.禁用按键的话通过判断输入的按键代码来控制,输入不符合条件的按键代码则返回空的按键代码

实现代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script language="javascript" type="text/javascript">
window.onkeydown = function (event) { 
    //var e = window.event?window.event:event;
    var e = event || window.event;
    if(e.keyCode == 27) {
        e.returnValue=false;
        e.keyCode = 0;
        return false;
    }
};
</script>
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js' type="text/javascript"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function() {
    document.onkeydown = function (event) {
        //var e = window.event?window.event:event;
        var e = event || window.event;
        if(e.keyCode == 27){
            e.returnValue=false;
            e.keyCode = 0;
            return false;
        };
    }
});
</script>
</head>
<body>
</body>
</html>
Categories: 语言编程 Tags: ,
  1. No comments yet.
  1. No trackbacks yet.