waitForStable
Ожидает, пока элемент не станет стабильным (без анимации) в течение указанного количества миллисекунд. Возвращает true, если селектор соответствует хотя бы одному стабильному элементу в DOM, в противном случае выдает ошибку. Если флаг reverse установлен в true, команда вместо этого вернет true, если селектор не соответствует ни одному стабильному элементу.
Примечание: лучше отключить анимацию вместо использования этой команды
Использование
$(selector).waitForStable({ timeout, reverse, timeoutMsg, interval })
Параметры
Имя | Тип | Описание |
---|---|---|
options опционально | WaitForOptions | опции waitForStable (опционально) |
options.timeout опционально | Number | время в мс (по умолчанию установлено на основе значения конфигурации waitforTimeout ) |
options.reverse опционально | Boolean | если true, ожидает противоположного (по умолчанию: false) |
options.timeoutMsg опционально | String | если существует, переопределяет сообщение об ошибке по умолчанию |
options.interval опционально | Number | интервал между проверками (по умолчанию: waitforInterval ) |
Примеры
index.html
<head>
<style>
div {
width: 200px;
height: 200px;
background-color: red;
}
#has-animation {
animation: 3s 0s alternate slidein;
}
@keyframes slidein {
from {
margin-left: 100%;
width: 300%;
}
to {
margin-left: 0%;
width: 100%;
}
}
</style>
</head>
<body>
<div #has-animation></div>
<div #has-no-animation></div>
</body>
waitForStable.js
it('should detect that element is instable and will wait for the element to become stable', async () => {
const elem = await $('#has-animation')
await elem.waitForStable({ timeout: 3000 });
});
it('should detect that element is stable and will not wait', async () => {
const elem = await $('#has-no-animation')
await elem.waitForStable();
});
Возвращает
- <Boolean>
return
: true если элемент стабилен