Перейти до основного вмісту

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, якщо елемент стабільний

Welcome! How can I help?

WebdriverIO AI Copilot