.prevUntil( [selector ] [, filter ] )Возвращает: jQuery
Описание: Получить все предыдущие соседние элементы каждого элемента до, но не включая, элемент, соответствующий селектору, узлу DOM или объекту jQuery.
-
версия добавлена: 1.4.prevUntil( [selector ] [, filter ] )
-
версия добавлена: 1.6.prevUntil( [element ] [, filter ] )
- elementУзел DOM или объект jQuery, указывающий, где прекратить сопоставление предыдущих соседних элементов.
- filterТип: СелекторСтрока, содержащая выражение селектора для сопоставления элементов.
-
Учитывая выражение селектора, представляющее набор элементов DOM, метод .prevUntil() ищет предшественники этих элементов в дереве DOM, останавливаясь, когда достигает элемента, соответствующего аргументу метода. Новый объект jQuery, который возвращается, содержит все предыдущие соседние элементы до, но не включая, тот, который соответствует селектору .prevUntil(); элементы возвращаются в порядке от ближайшего соседа к самому далекому.
Если селектор не соответствует или не указан, будут выбраны все предыдущие соседние элементы; в этих случаях он выбирает те же элементы, что и метод .prevAll() при отсутствии селектора фильтра.
Начиная с jQuery 1.6, в качестве первого аргумента .prevUntil() можно использовать узел DOM или объект jQuery вместо селектора.
Метод необязательно принимает выражение селектора в качестве своего второго аргумента. Если этот аргумент указан, элементы будут отфильтрованы путем проверки соответствия селектору.
Пример:
Найдите соседей, которые предшествуют <dt id="term-2"> до предыдущего <dt> и задайте им красный фон. Также найдите предыдущие <dd> соседей <dt id="term-3"> до <dt id="term-1"> и задайте им цвет текста зелёный.
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>prevUntil demo</title> <script src="https://code.jquery.com/jquery-3.7.0.js"></script> </head> <body> <dl> <dt id="term-1">term 1</dt> <dd>definition 1-a</dd> <dd>definition 1-b</dd> <dd>definition 1-c</dd> <dd>definition 1-d</dd> <dt id="term-2">term 2</dt> <dd>definition 2-a</dd> <dd>definition 2-b</dd> <dd>definition 2-c</dd> <dt id="term-3">term 3</dt> <dd>definition 3-a</dd> <dd>definition 3-b</dd> </dl> <script> $( "#term-2" ).prevUntil( "dt" ) .css( "background-color", "red" ); var term1 = document.getElementById( "term-1" ); $( "#term-3" ).prevUntil( term1, "dd" ) .css( "color", "green" ); </script> </body> </html>