<script language="javascript">
var cells = document.getElementsByTagName('td');
for (var i=0;i<cells.length;i++){
cells[i].onmouseover = function(){ //鼠标指针在行上面的时候
this.className = 'hover';
for (var j=0;j<cells.length;j++)
if(cells[j]==this){
cells[j%5].className ='hover';
cells[j-j%5].className ='hover';

}
}
cells[i].onmouseout = function(){ //鼠标指针离开时
this.className = '';
for (var j=0;j<cells.length;j++)
if(cells[j]==this){
cells[j%5].className ='';
cells[j-j%5].className ='';
}
}
}
</script>大家帮我看看这两行代码的意思
cells[j%5].className ='hover';
cells[j-j%5].className ='hover';
谢谢了!!!!

解决方案 »

  1.   

    cells是所有的td集合 。
    %取余数 。
    className ='hover';
    给他的class属性赋值"hover" 。
      

  2.   

    <table summary="book list">
    <caption>Book List</caption>
    <tr >
    <td >Title</td>
    <td>ID</td>
    <td>Contry</td>
    <td>Price</td>
    <td>Download</td>
    </tr> <tr >
    <td >Tom</td>
    <td>1213456</td> <td>Germany</td>
    <td>$3.12</td>
    <td>Download</td>
    </tr>
    <tr>
    <td style="height: 38px" >Chance</td>
    <td style="height: 38px">1213457</td> <td style="height: 38px">Germany</td>
    <td style="height: 38px">$123.34</td>
    <td style="height: 38px">Download</td>
    </tr>
    <tr >
    <td style="height: 38px" >John</td>
    <td style="height: 38px">1213458</td> <td style="height: 38px">Germany</td>
    <td style="height: 38px">$34.37</td>
    <td style="height: 38px">Download</td>
    </tr>
    <tr>
    <td style="height: 38px">oKathleen</td>
    <td style="height: 38px">1213459</td>
    <td style="height: 38px">Germany</td>
    <td style="height: 38px">$23.67</td>
    <td style="height: 38px">Download</td>
    </tr>
    <tr>
    <td style="height: 38px">oKathleen</td>
    <td style="height: 38px">1213459</td>
    <td style="height: 38px">Germany</td>
    <td style="height: 38px">$23.67</td>
    <td style="height: 38px">Download</td>
    </tr>
    </table>
    <script language="javascript">
    var cells = document.getElementsByTagName('td');
    for (var i=0;i<cells.length;i++){
    cells[i].onmouseover = function(){ //鼠标指针在行上面的时候
    this.className = 'hover';
    for (var j=0;j<cells.length;j++)
    if(cells[j]==this){
    cells[j%5].className ='hover';
    cells[j-j%5].className ='hover';

    }
    }
    cells[i].onmouseout = function(){ //鼠标指针离开时
    this.className = '';
    for (var j=0;j<cells.length;j++)
    if(cells[j]==this){
    cells[j%5].className ='';
    cells[j-j%5].className ='';
    }
    }
    }
    </script>
    </body>
    我是想知道这两行实现当前单元格所对应的垂直方向第一个单元格,和水平方向的第一个单元格的原理,谢谢!!!
    cells[j%5].className ='';
    cells[j-j%5].className ='';