Spec-Zone.ru › jQuery

.parentsUntil()

.parentsUntil( [selector ] [, filter ] )Возвращает: jQuery

Описание: Получает предков каждого элемента в текущем наборе сопоставленных элементов, до, но не включая элемент, соответствующий селектору, узлу DOM или объекту jQuery.

  • версия добавлена: 1.4.parentsUntil( [selector ] [, filter ] )

    • selector
      Тип: Селектор
      Строка, содержащая выражение селектора, указывающее, где следует прекратить сопоставление элементов-предков.
    • filter
      Тип: Селектор
      Строка, содержащая выражение селектора для сопоставления элементов.
  • версия добавлена: 1.6.parentsUntil( [element ] [, filter ] )

    • element
      Тип: Элемент или jQuery
      Узел DOM или объект jQuery, указывающий, где следует прекратить сопоставление элементов-предков.
    • filter
      Тип: Селектор
      Строка, содержащая выражение селектора для сопоставления элементов.

При заданном выражении селектора, представляющем набор элементов DOM, метод проходит по предкам этих элементов до тех пор, пока не достигнет элемента, соответствующего селектору, переданному в аргументе метода. Результирующий объект jQuery содержит все предки до, но не включая, тот, который соответствует селектору.

Если селектор не соответствует или не предоставлен, все предки будут выбраны; в этих случаях он выбирает те же элементы, что и метод .parents() при отсутствии селектора.

Начиная с jQuery 1.6, в качестве первого аргумента .parentsUntil() можно использовать узел DOM или объект jQuery вместо селектора.

Метод необязательно принимает выражение селектора в качестве второго аргумента. Если этот аргумент указан, элементы будут отфильтрованы, проверяя соответствие этому селектору.

Пример:

Найдите предков <li class="item-a"> до <ul class="level-1"> и задайте им красный цвет фона. Также найдите предков <li class="item-2">, имеющих класс "yes", до <ul class="level-1">, и задайте им зеленую границу.

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>parentsUntil demo</title>
  <script src="https://code.jquery.com/jquery-3.7.0.js"></script>
</head>
<body>
 
<ul class="level-1 yes">
  <li class="item-i">I</li>
  <li class="item-ii">II
    <ul class="level-2 yes">
      <li class="item-a">A</li>
      <li class="item-b">B
        <ul class="level-3">
          <li class="item-1">1</li>
          <li class="item-2">2</li>
          <li class="item-3">3</li>
        </ul>
      </li>
      <li class="item-c">C</li>
    </ul>
  </li>
  <li class="item-iii">III</li>
</ul>
 
<script>
$( "li.item-a" )
  .parentsUntil( ".level-1" )
    .css( "background-color", "red" );
 
$( "li.item-2" )
  .parentsUntil( $( "ul.level-1" ), ".yes" )
    .css( "border", "3px solid green" );
</script>
 
</body>
</html>

Демо:

© The jQuery Foundation and other contributors
Licensed under the MIT License.
https://api.jquery.com/parentsUntil

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API