2016-08-30 34 views
0

我已經使用nth-child定位了特定的td,但是想要看到一旦我定位了特定的td後,我就可以在列表後繼續下去那nth-child,那會怎麼樣?如何定位第n個孩子td然後繼續下去

這是我到目前爲止有:

var start = "3";  
var first = $("tr:first-child").find("td:nth-child("+start+")"); 

\\a function that allows me to go to the next td's that are after the third td (ignoring 1 & 2) 

回答

2

可以使用.nextAll()選擇器來定位下一個同級元素:

var nextalltds = first.nextAll(); 
+0

這實際上制定了其他一切。做得很好! – Majo0od

0

可以使用filter()功能選擇你從一個匹配的元素集合想要的任何元素。

在下面的例子中,找到從第三(索引= 2)一種起始的所有行,並添加selected-row

$('table').find('tr').filter(function(index) { 
 
    return index > 1; 
 
}).addClass('selected-row');
table { border-collapse:collapse } 
 
table td { 
 
    border:1px solid #333; 
 
    padding:5px 10px; 
 
} 
 
.selected-row td { background-color:#d8d8d8 }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 
 
<table> 
 
    <tbody> 
 
    <tr><td>Table cell</td><td>Table cell</td></tr> 
 
    <tr><td>Table cell</td><td>Table cell</td></tr> 
 
    <tr><td>Table cell</td><td>Table cell</td></tr> 
 
    <tr><td>Table cell</td><td>Table cell</td></tr> 
 
    <tr><td>Table cell</td><td>Table cell</td></tr> 
 
    <tr><td>Table cell</td><td>Table cell</td></tr> 
 
    <tr><td>Table cell</td><td>Table cell</td></tr> 
 
    <tr><td>Table cell</td><td>Table cell</td></tr> 
 
    <tr><td>Table cell</td><td>Table cell</td></tr> 
 
    </tbody> 
 
</table>

0

你可以使用:gt選擇,就像這樣:

var start = "1"; // note: works on index, so to start on the third element, use 1 
 
var $first = $("tr:first-child td:gt(" + start + ")").addBack(); 
 
$first.addClass('foo');
.foo { color: #C00; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tr> 
 
    <td>1</td> 
 
    <td>2</td> 
 
    <td>3</td> 
 
    <td>4</td> 
 
    <td>5</td> 
 
    </tr> 
 
</table>