1.请问:eq()与.eq()有什么不同?为什么有这两种方式?分别用于哪里?
2.为什么这个程序不能运行?
原意:表格中双行就显示CSS背景色,单行就没有背景色<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript" src="jquery_included/jquery-1.8.3.min.js"></script>
<script type="text/javascript">
$(function() {
$trs = $('#tb tbody').first().children();

for ($i = 0; $i < $trs.length; $i++)
if ($trs.eq($i) % 2 == 0)
$trs.eq($i).css('background-color', '#888');
});
</script>
</head><body>
<table id="tb">
     <tbody>
         <tr>
             <td>第一行</td>
                <td>第一行</td>
            </tr>
            <tr>
             <td>第二行</td>
                <td>第二行</td>
            </tr>
            <tr>
             <td>第三行</td>
                <td>第三行</td>
            </tr>
            <tr>
             <td>第四行</td>
                <td>第四行</td>
            </tr>
            <tr>
             <td>第五行</td>
                <td>第五行</td>
            </tr>
            <tr>
             <td>第六行</td>
                <td>第六行</td>
            </tr>
        </tbody>
    </table>
</body>
</html>jqueryxhtmlhtmlfunctiontable

解决方案 »

  1.   

    问题补充:$('#tb tbody').first()意思为可能之后还有很多tbody的,所以就.first()表示第一个tbody
      

  2.   


    <!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>无标题文档</title>
    <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script> 
    <script type="text/javascript">
    $(function() {
    $trs = $('#tb tr');
    for ($i = 0; $i < $trs.length; $i++)
    if ($i % 2 == 0)
    $trs.eq($i).css('background-color', '#888');
    });
    </script>
    </head><body>
    <table id="tb">
         <tbody>
             <tr>
                 <td>第一行</td>
                    <td>第一行</td>
                </tr>
                <tr>
                 <td>第二行</td>
                    <td>第二行</td>
                </tr>
                <tr>
                 <td>第三行</td>
                    <td>第三行</td>
                </tr>
                <tr>
                 <td>第四行</td>
                    <td>第四行</td>
                </tr>
                <tr>
                 <td>第五行</td>
                    <td>第五行</td>
                </tr>
                <tr>
                 <td>第六行</td>
                    <td>第六行</td>
                </tr>
            </tbody>
        </table>
    </body>
    </html>
      

  3.   

    :eq()是选择器,如$("td:eq(2)")
    .eq()是方法$("td").eq(2)
    作用一样,形式不同
      

  4.   

    要表格中双行就显示CSS背景色,单行就没有背景色,只要一行$(function() {
    $('#tb tr:even').css('background-color', '#888');
    });