2013-03-17 55 views
1

我有一個元素,我用$ .ajax填充現在我想淡化所有自定義加載的元素,當頁面加載時,元素已經預填充了20個元素,我不想瞄準那些20.基本上,假設我總共有37個div,我該如何瞄準後面的17個div?目前我使用:在div範圍內定位CSS

while ($(".info #future>center>div").length>20) { 
    $(".info #future>center>div:last-child").remove(); 
} 

將其刪除,但現在我也想淡化效果被應用之前,他們的班級分配任何事情,因爲該屬性已經採取了是不是一種選擇。

回答

2

你可以使用jQuery的slice()Slice()方法。給定一個表示一組DOM元素的jQuery對象,.slice()方法會構造一個新的jQuery對象,其中包含由start和可選的end參數指定的元素的子集。提供的開始索引標識集合中元素之一的位置;如果省略了結尾,則此結果後的所有元素都將包含在結果中。

$('.info #future>center>div').slice(20).remove(); //Where start and end your index to filter. I omitted end parameter. if you want you can put it. .slice(20,37) 

,如果你想淡入效果jQuery的:gt() Selector

$('.info #future>center>div').slice(20).fadeOut(300, function() { $(this).remove(); }); 
+0

稱它爲我怎能不指定結束了嗎? – user2177393 2013-03-17 15:37:44

+0

@ user2177393我已指定。它將刪除從21開始的所有div到有多少div。如果你想結束。 (20,37) – 2013-03-17 15:41:44

+0

和我在下面的答案中所說的一樣的問題。 – user2177393 2013-03-17 15:42:17

0

拿來看。

它用來提供給它的指數比指數更大的選擇所有元素,因此你可以用index = 20

$(".info #future>center>div:gt(20)").remove(); 
+0

它似乎這樣做,如果我通過ID引用每個填充元素,但如果我通過類引用它們全部(例如'$(「。info .queue> center> div:gt(19 )「)。animate({opacity:0},1500,function())'似乎在第一個.queue上一切正常完成,但剩下的所有div都淡入淡出。 – user2177393 2013-03-17 15:39:35