Método prevUntil() de jQuery
Ejemplo
Seleccione todos los párrafos y luego reduzca el contenido seleccionado solo para incluir los primeros y segundos párrafos:
$("p").slice(0, 2).wrapInner(");
Definición y uso
slice() reduce la colección de elementos coincidentes a un subconjunto dentro del rango de índices especificados.
Sintaxis
.slice(selector,end)
Parámetros | Descripción |
---|---|
selector |
Entero de valor 0 basado en el valor, que indica la posición del elemento inicial de la selección. Si es negativo, indica la cantidad de desplazamiento desde el extremo de la colección. |
end |
Entero de valor 0 basado en el valor, que indica la posición del elemento final de la selección. Si es negativo, indica la cantidad de desplazamiento desde el extremo de la colección. Si se omite, el rango de selección finalizará en el extremo de la colección. |
Explicación detallada
Si se proporciona un objeto jQuery que representa una colección de elementos DOM, el método .slice() construye un nuevo objeto jQuery con un subconjunto de elementos que coinciden. La posición del elemento en la colección de índices aplicados; si se omite el parámetro end, todos los elementos después de index se incluirán en el resultado.
Piensa en esta página con una lista simple:
<ul> <li>elemento de lista 1</li> <li>elemento de lista 2</li> <li>elemento de lista 3</li> <li>elemento de lista 4</li> <li>elemento de lista 5</li> </ul>
Podemos aplicar este método a la colección de elementos de lista:
$('li').slice(2).css('background-color', 'red');
El resultado de esta llamada es que el fondo de los elementos 3, 4 y 5 se establece en rojo. Nota: los parámetros de índice aplicados se basan en cero y se refieren a la posición de los elementos en el objeto jQuery, no en el árbol DOM.
El parámetro end permite limitar aún más el rango de selección. Por ejemplo:
$('li').slice(2, 4).css('background-color', 'red');
Ahora, solo se seleccionarán los elementos 3 y 4. De nuevo, el índice se basa en cero; el rango se extenderá hasta (pero no incluye) el índice especificado.
Índice negativo
El método .slice() de jQuery imita el método .slice() del objeto de array JavaScript. Una de las características que imita es la capacidad de pasar números negativos a los parámetros start o end. Si se proporcionan números negativos, se indica una posición desde el final de la colección, no desde el principio. Por ejemplo:
$('li').slice(-2, -1).css('background-color', 'red');
Esta vez, solo el elemento de lista 4 se volverá rojo, porque este proyecto es el único que está dentro del rango entre el segundo desde el final (-2) y el primero desde el final (-1).