2010-09-10 15 views
21

Tengo una lista con un montón de elementos:¿Cómo obtener los primeros X elementos?

<ul> 
    <li>text</li> 
    <li>text</li> 
    <li>text</li> 
    <li>text</li> 
    <li>text</li> 
    <li>text</li> 
    <li>text</li> 
    <li>text</li> 
    <li>text</li> 
    <li>text</li> 
    <li>text</li> 
</ul> 

¿Cómo se orienta los primeros cinco li elementos y añadir una clase a ellos?

Respuesta

49

Usa el :lt selector:

$("ul > li:lt(5)").addClass("foo"); 
+0

': lt (...)' se basa en cero, por lo que ': lt (5)' seleccionaría los primeros 5 elementos – bendytree

+0

Estoy usando esto con variable pero no funciona $ (". Print_input_bx: lt (a)") .espectáculo(); – Dinesh

6

$('ul li:lt(5)')

Esto selecciona todos <li> s de <ul> cuyos index es inferior a 5 (es decir, 0-4, o el primer cinco)

+2

No soy un matemático, pero no es lo que realmente decir lt() - menos-que? – jlarson

+0

Whoops, corregidos. ¡Gracias! –

+2

¿No te refieres a lt (5)? si es menor que entonces, es solo 0-3. Menos de o igual incluiría el 5to. – Mark

25

Además del selector :lt(), también puede usar la función slice().

$('li').slice(0, 5).addClass('someClass'); 
2

para los primeros cinco que tendrá que usar

$('ul li:lt(5)').addClass('first-five');

+0

lt es menor que tan inferior a 4 es 0 1 2 3 (es el primero 4) –

+0

correcto, original editado – Ross

Cuestiones relacionadas