Jak ustawić pętlę renderowania setInterval, która zepsuje się, gdy warunek zostanie spełniony?js renderuje pętlę, która znika po spełnieniu warunku
Odpowiedz
można przechowywać interwał identyfikator i wyczyścić go poprzez clearInterval()
np
var timer = setInterval(myFunction, 1000);
function myFunction() {
if(condition) {
clearInterval(timer);
return;
}
//do stuff
}
Lub jeśli możesz po prostu zadzwonić pod numer clearInterval()
, gdzie ustawienie warunku, więc następny okres nie działa, nie mając logiki dla tego w samej funkcji.
Jeśli zapytasz, jak zatrzymać wywołanie funkcji, które zostało ustawione za pomocą setInterval(), po prostu użyj clearInteval() function. najpierw trzeba zapisać referencję do funkcji setInterval i nie korzystać z tego odniesienie do zatrzymania przedziale:
var int=self.setInterval("your_function_name()",1000);
if(condition){
clearInterval(int)
}
clearInterval
zatrzymuje powtórki z setInterval
, używając identyfikatora zwrócony przez setInterval
: Odpowiedź
var interval = setInterval(function() {
// do your loop
if (loop_should_stop) {
clearInterval(interval);
}
}, dt);
Spowoduje to, że po raz ostatni uruchomi się przed zatrzymaniem, czek musi znajdować się na początku funkcji. –
Tak. W zależności od tego, gdzie obliczany jest warunek przerwania, może to być coś, co chcesz. – kevingessner
Nicka działa idealnie. Wyciągnąłem go przez powrót obietnicę
function checkUntil(conditionFunc, millisecondsInterval) {
var retryCount = 0;
var retryCountLimit = 100;
var promise = new Promise((resolve, reject) => {
var timer = setInterval(function() {
if (conditionFunc()) {
clearInterval(timer);
resolve();
return;
}
retryCount++;
if (retryCount >= retryCountLimit) {
clearInterval(timer);
reject("retry count exceeded");
}
}, millisecondsInterval);
});
return promise;
}
i można wywołać go jak tak
checkUntil(function() {
return document.querySelector('body');
}, 500).then(function() {
...
...
});
});
- 1. Usuwanie pozycji z listy po spełnieniu warunku
- 2. Jak wyjść z foreach po spełnieniu warunku?
- 3. Jak programowo zmienić docelowy src ImageButton po spełnieniu warunku?
- 4. Resetowanie wartości dropdown do pierwszej wartości przy spełnieniu warunku
- 5. Jak zatrzymać wszystkie pająki i silnik natychmiast po spełnieniu warunku w rurociągu?
- 6. Czy można anulować wybór i "Kontynuuj" w ciągu. Wybierz wyciąg po spełnieniu warunku?
- 7. Jak rozwiązywać problemy z aplikacją .NET, która po prostu znika?
- 8. Rails JS Response, renderuje status i szablon?
- 9. Ogień $ ngAnimate Wprowadź po spełnieniu obietnicy
- 10. UIDocumentInteractionController znika po obróceniu
- 11. Czy debugger JS zawiesza całą pętlę zdarzeń JS?
- 12. Vue JS 2.0 nie renderuje niczego?
- 13. Powiadomienie znika po zakończeniu aktywności
- 14. Jak przerwać pętlę z warunku if wewnątrz pętli while?
- 15. Etykietka Jquery nie znika po kliknięciu pozycji
- 16. Potencjalna metoda wywołująca po spełnieniu żądania POST (w zasadzie Ajaxical)
- 17. Etykieta przypadkowo znika po pewnej długości
- 18. Testowanie animowanej etykiety, która pojawia się i znika
- 19. Zakończ pętlę po określonym czasie w C#
- 20. Funkcja iOS UIImageView znika po obrocie M_PI_4
- 21. CSS tło znika po użyciu pływaka: lewy
- 22. Okno dialogowe jquery - div znika po inicjalizacji
- 23. Tekst TextView znika po obróceniu urządzenia
- 24. Balon na tipsy znika po 5 sekundach
- 25. Bootstrap: pasek przewijania znika po zamknięciu modalnym
- 26. NotificationCompat.BigTextStyle Treść znika po nowym powiadomieniu
- 27. LocalStorage znika w chrome po odświeżeniu strony
- 28. ToolTip WPF znika po przyciśnięciu myszką
- 29. Kolor przejścia znika po najechaniu myszą?
- 30. co to jest wtyczka jquery, która wstawia tekst w polu tekstowym, a znika po ustawieniu ostrości?
Tak, ale ** ** nie używać znaków, należy użyć rzeczywistej wartości zadanej funkcji. –