2011-01-14 34 views
6

之間的元素我有HTML並且想要從第10'位置選擇區間5個元素。這個怎麼做?如何選擇區間

我的HTML:

<div class="chaire"> 
    <img alt="" src="2.gif"> 

</div> 
<div class="chaire"> 
    <img alt="" src="2.gif"> 
</div> 
<div class="chaire"> 
    <img alt="" src="2.gif"> 
</div> 
<div class="chaire"> 
    <img alt="" src="2.gif"> 
</div> 
... 
<div class="chaire"> 
    <img alt="" src="2.gif"> 
</div> 

我嘗試使用jQuery:

$(".chaire:gt(10):lt(15)"); 

,但它選擇了我的div和img標籤。但我需要div標籤。

回答

4

您的代碼做這項工作就好了,並且只選擇 <div>元素。看看 this example fiddle,發現10 <div>元素後第10( :gt(9):lt(15))。


你將只選擇與類名的元素,在你的榜樣HTML的情況下的選擇,它只是 <div>元素。否將選擇 <img>元素。由於 rcravens已經指出,兩個選擇器單獨修改結果,因此您首先需要使用 :lt() - :lt(15):gt(9)

更新示例:http://jsfiddle.net/teQkf/3/。示例代碼的下一部分在結果中找到<img>元素,並將其src更改爲其他內容。

你使用slice,這是隻有在結果上一個操作,因此減少混亂更好,更不用提快:

$(".chaire").slice(10,15); 

(example)

2

試試這個:

$(".chaire:gt(10):lt(5)"); 

這裏是一個jFiddle一起玩。

http://jsfiddle.net/rcravens/m3j6K/

它看起來像鏈將GT'和「LT」選擇手段「LT」被施加到「GT」後剩下。

鮑勃

+0

如果你想保持'10 '和'15'指數,首先應用'lt'和'gt'秒。我更新了jFiddle以包含一個示例:http://jsfiddle.net/rcravens/m3j6K/1/ – rcravens 2011-01-14 14:17:26

+0

值得一提的是,兩個選擇器都將基於零的整數作爲參數,所以0來自第一個元素,1是從第二個等等。因此,`:gt(10):lt(5)`實際上選擇了元素12-15,它只有4個元素。看到你自己的例子更新:http://jsfiddle.net/m3j6K/3/ – 2011-01-14 14:34:50