function catchindex(obj)
  {
    i = 0;
    while (obj.tagName != "DIV")
    {
     i++;
     alert(document.all[obj.sourceIndex + i].tagName);
    }
  }

解决方案 »

  1.   

    稍微修改了一下
    希望对大家有帮助
    <html><head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>catchindex</title>
    <script language="javascript">
    <!--
    function catchindex(obj)
    {
    for(var i=0;i<5;i++)
    {
    var DivObj=document.all[obj.sourceIndex + i]
        if (DivObj.tagName == "DIV")
        {
         //i++;
         //alert(document.all[obj.sourceIndex + i].tagName);
    if(DivObj.style.display=="none")
    DivObj.style.display=""
    else
    DivObj.style.display="none"
        }
    }
    }//-->
    </script>
    </head><body><table id="idtable">
    <tr id="idtr" onmouseover="catchindex(this)" onmouseout="catchindex(this)">
    <td id="idtd">
    1
    </td>
    </tr>
    <tr>
    <td>
    <div id="iddiv" style="display:none">this is div1</div>
    </td>
    </tr>
    <tr id="idtr" onmouseover="catchindex(this)" onmouseout="catchindex(this)">
    <td id="idtd">
    2
    </td>
    </tr>
    <tr>
    <td>
    <div id="iddiv" style="display:none">this is div2</div>
    </td>
    </tr>
    <tr id="idtr" onmouseover="catchindex(this)" onmouseout="catchindex(this)">
    <td id="idtd">
    3
    </td>
    </tr>
    <tr>
    <td>
    <div id="iddiv" style="display:none">this is div3</div>
    </td>
    </tr>
    </table></body></html>