Spec-Zone.ru › Cypress

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')

Команды выше будут отображаться в журнале команд как:

Command Log closest

При нажатии на команду closest в журнале команд консоль выведет следующее:

console.log closest

См. также

  • .first()
  • .parent()
  • .parents()
  • .parentsUntil()
  • .prev()
  • .prevAll()
  • .prevUntil()

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

Spec-Zone.ru

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