2012-06-28 11 views
14

Po znalezieniu czwartego elementu <a>, w jaki sposób mogę uzyskać .hide() resztę? Poniżej znajduje się kod, który napisałem do tej pory:Ukryj wszystkie elementy, które pojawią się po n-tym elemencie

<script src="http://code.jquery.com/jquery-latest.js"></script> 

<script> 
    $(document).ready(function() { 
     if($('a').length >= 4) { 
      window.alert('4 or more'); 
     } 
    }); 
</script> 

<a>test </a><br> 
<a>fed </a><br> 
<a>fdes </a><br> 
<a>grr </a><br> 
<a>rerf </a><br> 
<a>dferf </a> 

Jakieś pomysły?

Odpowiedz

18

Zastosowanie :gt(index) selektor:

$('a:gt(3)').hide(); 

Albo szybciej slice funkcja:

$('a').slice(4).hide(); 

Live DEMO

Ponieważ : gt() to rozszerzenie jQuery i nie jest częścią specyfikacji CSS, kwerendy przy użyciu: gt() nie można wykorzystać wzrost wydajności dostarczone przez natywny DOM querySelectorAll () metoda. Aby uzyskać lepszą wydajność w nowoczesnych przeglądarkach, użyj zamiast tego $ ("twój-czysty-selektor"). Slice (index).

+0

Hmmm ... "plaster"? – VisioN

+0

@VisioN. Przeczytaj dokumenty, które dodałem, – gdoron

+0

+1 za sugerowanie metody plasterka. – nolabel

Powiązane problemy