JavaScript 实现方向键切换输入框焦点

作者:函数茶馆

时间:2026-10-29

浏览:543

本文介绍如何使用 JavaScript 通过监听键盘方向键来切换输入框焦点,从而提升数据录入效率。示例代码展示了基于表格布局的焦点移动逻辑,但需注意该方法在 Firefox 浏览器中可能存在兼容性问题。

文章目录

JavaScript 实现方向键切换输入框焦点

本文介绍利用 JavaScript 实现通过方向键切换输入框焦点的具体方法,供读者参考。

该功能通过 JavaScript 监听方向键来控制输入框焦点的切换。需要注意的是,此实现方式无法兼容 Firefox 浏览器。用户在输入完成后,可以通过按下回车键或方向键将焦点移动至目标文本框,无需使用鼠标点击。这种交互方式能够显著提高频繁录入数据时的操作速度。

运行效果截图如下:

JavaScript 实现方向键切换输入框焦点

在线演示地址如下:

http://demo.jb51.net/js/2015/js-input-cha-focus-style-codes/

具体代码如下:


<!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>JS方向键切换输入框焦点</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<table border="1" id="mm" onkeydown="keyDown(event)"> 
<tr> <td> <input> </td> <td> <input> </td> <td> <input> </td> <td> <input> </td> </tr> 
<tr> <td> <input> </td> <td> <input> </td> <td> <input> </td> <td> <input> </td> </tr> 
<tr> <td> <input> </td> <td> <input> </td> <td> <input> </td> <td> <input> </td> </tr> 
<tr> <td> <input> </td> <td> <input> </td> <td> <input> </td> <td> <input> </td> </tr> 
<tr> <td> <input> </td> <td> <input> </td> <td> <input> </td> <td> <input> </td> </tr> 
</table> 
<script language="javascript" type="text/javascript"> 
<!-- 
var inputs=document.getElementById("mm").getElementsByTagName("INPUT"); 
function keyDown(event) 
{ 
 var focus=document.activeElement; 
 if(!document.getElementById("mm").contains(focus)) return; 
 var event=window.event||event;
 var key=event.keyCode; 
 for(var i=0; i<inputs.length; i++) 
 { 
  if(inputs[i]===focus) break; 
 } 
 switch(key) 
 { 
  case 37: 
   if(i>0) inputs[i-1].focus(); 
   break; 
  case 38: 
   if(i-4>=0) inputs[i-4].focus(); 
   break; 
  case 39: 
   if(i<inputs.length-1) inputs[i+1].focus(); 
   break; 
  case 40: 
   if(i+4 <inputs.length) inputs[i+4].focus(); 
   break; 
 } 
} 
//--> 
</script> 
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章