@AuthorProxy
, @David Thomas
@Maximilian Ehlers
y todos sugieren $('.member-info').not('.first').hide();
en sus respuestas, que es una solución muy rápida y muy fácil de leer.
Debido a la forma en que se evalúan los selectores de jQuery derecha a izquierda, el muy legible ".member-info:not(.first)"
que realmente está frenado por que la evaluación.
Una solución rápida y fácil de leer es, en efecto usando la versión de función .not(".first")
o incluso sólo .not(":first")
:
por ejemplo,
$(".member-info").not(".first").hide(); // Class selector
o
$(".member-info").not(":first").hide(); // Positional selector
JSPerf de selectores relacionados:http://jsperf.com/fastest-way-to-select-all-expect-the-first-one/6
.not(':first')
sólo unos pocos puntos porcentuales más lento que slice(1)
, pero es muy fácil de leer como "Quiero que todos excepto el primero ".
posible duplicado de [jQuery seleccionar todos excepto primero] (http://stackoverflow.com/questions/2259393/jquery-select-all-except-first) – bwright
Duplicado de cualquiera [todos los elementos-pero-el-primero ] (https://stackoverflow.com/q/2259393/673991) o [todos los elementos-no-en-una-clase] (https://stackoverflow.com/q/4614120/673991). De cualquier manera, esta pregunta es particularmente confusa nombrando la clase del primer elemento "primero". Entonces las respuestas incluyen '': not (: first)'' and '': not (.first)' 'e incluso'': not (first) ''! –