Hoppa till huvudinnehåll

waitForStable

Vänta på att ett element ska vara stabilt (inte animerat) under den angivna tiden i millisekunder. Returnerar sant om väljaren matchar minst ett element som är stabilt i DOM:en, annars genereras ett fel. Om reverse-flaggan är satt till true, kommer kommandot istället att returnera sant om väljaren inte matchar några stabila element.

Obs: det är bäst att inaktivera animationer istället för att använda detta kommando

Användning
$(selector).waitForStable({ timeout, reverse, timeoutMsg, interval })
Parametrar
NamnTypDetaljer
options
valfritt
WaitForOptionswaitForStable alternativ (valfritt)
options.timeout
valfritt
Numbertid i ms (standard baserat på waitforTimeout konfigurationsvärde)
options.reverse
valfritt
Booleanom true väntar den på motsatsen (standard: false)
options.timeoutMsg
valfritt
Stringom den finns åsidosätter den standardfelmeddelandet
options.interval
valfritt
Numberintervall mellan kontroller (standard: waitforInterval)
Exempel
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();
});
Returnerar
  • <Boolean> return: true om elementet är stabilt

Welcome! How can I help?

WebdriverIO AI Copilot