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')
Вышеприведенные команды будут отображены в журнале команд как:
При нажатии на parentsUntil в журнале команд в консоли отображается следующее:
См. также
© 2017 Cypress.io
Licensed under the MIT License.
https://docs.cypress.io/api/commands/parentsuntil