怎样移动方向键时在单元格之间移动光标

来源:互联网 发布:ios7软件源大全 编辑:程序博客网 时间:2024/05/10 04:07
<body onkeydown="mm()">
<table id=table1 border=1 cellspacing=0 width=300>
<tr>
  <td>1</td>
  <td>2</td>
  <td>3</td>
  <td>4</td>
  <td>5</td>
  <td>6</td>
</tr>
<tr>
  <td>1</td>
  <td>2</td>
  <td>3</td>
  <td>4</td>
  <td>5</td>
  <td>6</td>
</tr>
<tr>
  <td>1</td>
  <td>2</td>
  <td>3</td>
  <td>4</td>
  <td>5</td>
  <td>6</td>
</tr>
<tr>
  <td>1</td>
  <td>2</td>
  <td>3</td>
  <td>4</td>
  <td>5</td>
  <td>6</td>
</tr>
</table>
<SCRIPT LANGUAGE="JavaScript">
var hrong = null; //设置一个页面级全局变量
function mm()
{
  var k = window.event.keyCode;
  if(k==37 || k==38 || k==39 || k==40)
  {
    if(hrong)
    {
      hrong.style.color = "#000000";
      hrong.style.backgroundColor = "#FFFFFF";
    }
  }
  switch(k)
  {
    case 37 : //←
      if(hrong && hrong.cellIndex>0)
      {
        hrong = hrong.parentElement.cells[hrong.cellIndex-1];
        alert(hrong.innerText);
      }
      break;
    case 39 : //→
      if(hrong && hrong.cellIndex<hrong.parentElement.cells.length-1)
      { 
        hrong = hrong.parentElement.cells[hrong.cellIndex+1];
      }
      break;
    case 38 : //↑
      if(hrong && hrong.parentElement.rowIndex>0)
      {
        var tr= hrong.parentElement;
        hrong = tr.parentElement.rows[tr.rowIndex-1].cells[hrong.cellIndex];
       
      }
      break;
    case 40 : //↓
      if(hrong && hrong.parentElement.rowIndex<hrong.parentElement.parentElement.rows.length-1)
      {
        var tr= hrong.parentElement;
        hrong = tr.parentElement.rows[tr.rowIndex+1].cells[hrong.cellIndex];
      }
      break;
  }
  if(!hrong) hrong = document.all.table1.rows[0].cells[0];
  hrong.style.color = "#FFFFFF";
  hrong.style.backgroundColor = "#0000FF";
}
</SCRIPT>
</body>
</html>
原创粉丝点击