js键盘操作事件

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4   <meta charset="UTF-8">
 5   <title>Document</title>
 6 </head>
 7 <body>
 8   <table id="keybord">
 9     <tr>
10       <td><input /></td>
11       <td><input /></td>
12       <td><input /></td>
13       <td><input /></td>
14     </tr>
15     <tr>
16       <td><input /></td>
17       <td><input /></td>
18       <td><input /></td>
19       <td><input /></td>
20     </tr>
21     <tr>
22       <td><input /></td>
23       <td><input /></td>
24       <td><input /></td>
25       <td><input /></td>
26     </tr>
27   </table>
28   <script type=‘text/javascript‘ src=‘jquery.js‘></script> 
29   <script type="text/javascript">
30     $(function(){
31       var baseIndex=100;
32       $(#keybord).find(tr).each(function(r){
33         $(this).find(td).each(function(c){
34           $(this).find(input).attr(tabindex,r*100+c+baseIndex).addClass(tbInput);
35         });
36       });
37       $(#keybord .tbInput).live(keydown,function(evt){
38         var tabIndex=parseInt($(this).attr(tabindex));
39           switch(evt.which){
40             case 38://up
41               tabIndex-=100;
42               break;
43             case 40://down
44               tabIndex+=100;
45               break;
46             case 37://left
47               tabIndex--;
48               break;
49             case 39://right
50               tabIndex++;
51               break;
52             default:
53               return;
54           }
55           if(tabIndex>0){
56             $(#keybord .tbInput[tabindex]=+tabIndex+}).focus();
57             return false;
58           }
59           return true;
60       });
61     })
62   </script>
63 </body>
64 </html>

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。