closest
Получите первый DOM-элемент, соответствующий селектору (будь то сам элемент или один из его предков).
Поведение запроса этого командного вызова точно соответствует тому, как работает
.closest()в jQuery.
Синтаксис
.closest(selector)
.closest(selector, options)
Использование
Правильное использование
cy.get('td').closest('.filled') // Yield closest el with class '.filled'
Неправильное использование
cy.closest('.active') // Errors, cannot be chained off 'cy'
cy.url().closest() // Errors, 'url' does not yield DOM element
Аргументы
selector (Строка селектора)
Селектор, используемый для фильтрации совпадающих DOM-элементов.
options (Объект)
Передайте объект опций для изменения стандартного поведения .closest().
| Опция | Значение по умолчанию | Описание |
|---|---|---|
log |
true |
Отображает команду в журнале команд |
timeout |
defaultCommandTimeout |
Время ожидания .closest() для разрешения перед выходом за пределы таймаута
|
Возвращаемое значение
-
.closest()возвращает новый найденный DOM-элемент(ы).
Примеры
Селектор
Поиск ближайшего элемента к .error с классом 'banner'
cy.get('p.error').closest('.banner')
Правила
Требования
-
.closest()требует цепочки команд, возвращающих DOM-элемент(ы).
Ассершены
-
.closest()автоматически повторяется до тех пор, пока элемент(ы) существуют в DOM -
.closest()автоматически повторяется до тех пор, пока все связанные утверждения не пройдут
Таймауты
-
.closest()может выйти за пределы таймаута, ожидая, пока элемент(ы) будут существовать в DOM . -
.closest()может выйти за пределы таймаута, ожидая прохождения добавленных утверждений.
Журнал команд
Поиск ближайшего элемента к li.active с классом 'nav'
cy.get('li.active').closest('.nav')
Команды выше будут отображаться в журнале команд как:
При нажатии на команду closest в журнале команд консоль выведет следующее:
См. также
© 2017 Cypress.io
Licensed under the MIT License.
https://docs.cypress.io/api/commands/closest