Spec-Zone.ru › Cypress

parentsUntil

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

Поведение запроса этой команды точно соответствует тому, как работает .parentsUntil() в jQuery.

Синтаксис

.parentsUntil(selector)
.parentsUntil(selector, filter)
.parentsUntil(selector, filter, options)
.parentsUntil(element)
.parentsUntil(element, filter)
.parentsUntil(element, filter, options)

Использование

Правильное использование

cy.get('p').parentsUntil('.article') // Yield parents of 'p' until '.article'

Неправильное использование

cy.parentsUntil() // Errors, cannot be chained off 'cy'
cy.location().parentsUntil('href') // Errors, 'location' does not yield DOM element

Аргументы

selector (строковый селектор)

Селектор, на котором следует прекратить поиск родительских предков.

element (DOM-узел, объект jQuery)

Элемент, на котором следует прекратить поиск родительских предков.

filter (строковый селектор)

Селектор, используемый для фильтрации сопоставленных DOM-элементов.

options (объект)

Передайте объект options, чтобы изменить поведение по умолчанию .parentsUntil().

Параметр Значение по умолчанию Описание
log true Отображает команду в журнале команд
timeout defaultCommandTimeout Время ожидания .parentsUntil() для разрешения до срабатывания таймаута

Возвращаемое значение

  • .parentsUntil() возвращает новые найденные DOM-элементы.

Примеры

Селектор

Найдите всех предков элемента .active до .nav

<ul class="nav">
  <li>
    <a href="#">Clothes</a>
    <ul class="menu">
      <li>
        <a href="/shirts">Shirts</a>
      </li>
      <li class="active">
        <a href="/pants">Pants</a>
      </li>
    </ul>
  </li>
</ul>
// yields [ul.menu, li]
cy.get('.active').parentsUntil('.nav')

Правила

Требования

  • .parentsUntil() требует цепочки команд, которые возвращают DOM-элементы.

Утверждения

  • .parentsUntil() автоматически повторяется до тех пор, пока элемент(ы) не появятся в DOM
  • .parentsUntil() автоматически повторяется до тех пор, пока все утверждения в цепочке не пройдут

Таймауты

  • .parentsUntil() может истечь, ожидая, пока элемент(ы) появятся в DOM .
  • .parentsUntil() может истечь, ожидая, пока пройдут все добавленные утверждения.

Журнал команд

Найдите всех предков элемента active до .nav

cy.get('.active').parentsUntil('.nav')

Вышеприведенные команды будут отображены в журнале команд как:

Command Log parentsUntil

При нажатии на parentsUntil в журнале команд в консоли отображается следующее:

Console Log parentsUntil

См. также

  • .parent()
  • .parents()
  • .prevUntil()
  • .nextUntil()

© 2017 Cypress.io
Licensed under the MIT License.
https://docs.cypress.io/api/commands/parentsuntil

Spec-Zone.ru

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