2011-09-14 66 views
2

我想應用此選擇器來刪除除了第一個以外的所有圖像看起來像這樣的div。jquery隱藏所有,但石砌第一圖像

$(".item_cont a img").not(":eq(0)").hide(); 

如下所示:

http://jsfiddle.net/jojoroxursox/9AFpv/

然而,當應用於磚石網格它會刪除所有項目,即使是那些只有一個圖像。

http://jsfiddle.net/jojoroxursox/M9Yau/

有什麼建議嗎?

+0

我強烈_suggest_你接受你的問題的一些答案。 – Bojangles

+0

完全同意。我sl sl不前 – papacostas

回答

3

在這種情況下,您希望選擇全部匹配元素列表中除第一項以外的所有項目。 .slice(startIndex)非常適合這套減少,像這樣:

$(".item_cont a img").slice(1).hide(); 

Here is your updated jsfiddle,雖然我個人得到的所有圖像403S ...所以它不能被清楚地看到工作。

如果我誤解,你想刪除每.item_cont所有,但第一,你會希望是在選擇側(比指數更大)更多的東西,比如:gt()

$(".item_cont a img:gt(0)").hide(); 
1

像這樣的東西?

var imgToKeep = $(".item_cont a img")[0]; 
$("img").each(function() { 
    if (this !== imgToKeep) { 
     $(this).hide(); 
    } 
}); 
1

不可能儘管他們肯定能夠在測試環境中工作,但可以讓其中的任何一個工作。我不知道它的石工是否會造成問題。

解決方法是在後端使用正則表達式在隱藏div中輸出第二級圖像。

相關問題