jQuery Przechodzenie - metoda prevUntil()
Przykład
Wybierz wszystkie akapity, a następnie skróć wybrane zawartość do tylko pierwszego i drugiego akapitu:
$("p").slice(0, 2).wrapInner(");
Definicja i użycie
slice() zmniejsza zbiór dopasowanych elementów do podanego zakresu indeksów.
Gramatyka
.slice(selector,end)
Parametr | Opis |
---|---|
selector |
Całkowita wartość liczby całkowitej, wskazująca pozycję początkową wyboru. Jeśli jest ujemna, wskazuje offset od końca zbioru. |
end |
Całkowita wartość liczby całkowitej, wskazująca pozycję końcową wyboru. Jeśli jest ujemna, wskazuje offset od końca zbioru. Jeśli pominięto, zakres wyboru kończy się na końcu zbioru. |
Szczegółowe wyjaśnienie
Jeśli podano obiekt jQuery reprezentujący zbiór elementów DOM, metoda .slice() tworzy nowy obiekt jQuery z podzbiorem dopasowanych elementów. Pozycja jednego z elementów w zbiorze indexów zastosowanych parametrów; jeśli pominięto parametr end, w wyniku będą zawarte wszystkie elementy po indexie.
Pomyśl o tej stronie z prostą listą:
<ul> <li>element listy 1</li> <li>element listy 2</li> <li>element listy 3</li> <li>element listy 4</li> <li>element listy 5</li> </ul>
Możemy zastosować tę metodę do zbioru elementów listy:
$('li').slice(2).css('background-color', 'red');
Wynik tego wezwania to ustawienie tła na czerwony dla elementów 3, 4 i 5. Proszę zauważyć, że zastosowane indexy są zerowe i odnoszą się do pozycji elementów w obiekcie jQuery, a nie w drzewie DOM.
Parametr end pozwala na dalsze ograniczenie zakresu wyboru. Na przykład:
$('li').slice(2, 4).css('background-color', 'red');
Teraz wybrane będą tylko elementy 3 i 4. Pamiętaj, że indeksy są zerowe; zakres rozciąga się do (ale nie zawiera) określonego indeksu.
Ujemne indeksy
Metoda .slice() jQuery naśladuje metodę .slice() obiektu tablicy JavaScript. Jedną z cech, którą naśladuje, jest możliwość przekazywania ujemnych wartości do parametrów start lub end. Jeśli podano ujemne wartości, wskazują one pozycję od końca zbioru, a nie od początku. Na przykład:
$('li').slice(-2, -1).css('background-color', 'red');
Tym razem tylko element 4 z listy zmieni kolor na czerwony, ponieważ jest to jedyny element znajdujący się w zakresie między końcem (-2) a końcem (-1).