--- title: window.setInterval slug: Web/API/setInterval tags: - DOM - DOM_0 - Dokumentacja_Gecko_DOM - Gecko - Wszystkie_kategorie translation_of: Web/API/WindowOrWorkerGlobalScope/setInterval original_slug: Web/API/WindowOrWorkerGlobalScope/setInterval ---
{{ ApiRef() }}
Ustawia opóźnienie do cyklicznego wywoływania określonej funkcji.
var idInterwalu = window.setInterval(funkcja, opóźnienie[, parametr1, parametr2, ...]); var idInterwalu = window.setInterval(kod, opóźnienie);
Parametry
idInterwalu to identyfikator ustawianego interwału który można przekazać do funkcji window.clearInterval().funkcja to funkcja, dla której ustawiane jest opóźnieniekod to ciąg znaków zawierający kod javascript do cyklicznego wykonania. Jest to składnia alternatywna, której wykorzystanie nie jest zalecane z tych samych powodów, co stosowanie eval().opóźnienie to liczba milisekund (tysięcznych części sekundy), co którą wywoływana będzie funkcja lub kodNależy zwrócić uwagę, że przekazywanie dodatkowych parametrów w pierwszej składni nie działa w Internet Explorerze.
idInterwalu = window.setInterval(animuj, 500);
W poniższym przykładzie, funkcja zmienKolorTekstu() będzie wykonywana co sekundę, dopóki użytkownik nie naciśnie przycisku Stop, co spowoduje wywołanie clearInterval() z parametrem idInterwalu.
<html>
<head>
<title>przykład z wykorzystaniem setInterval/clearInterval</title>
<script type="text/javascript">
var idInterwalu;
function zmienKolor() {
idInterwalu = setInterval(zmienKolorTekstu, 1000);
}
function zmienKolorTekstu() {
var elem = document.getElementById("my_box");
if (elem.style.color == 'red') {
elem.style.color = 'blue';
} else {
elem.style.color = 'red';
}
}
function zatrzymajZmianeKoloru() {
clearInterval(idInterwalu);
}
</script>
</head>
<body onload="zmienKolor();">
<div id="my_box">
<p>Hello World</p>
</div>
<button onclick="zatrzymajZmianeKoloru();">Stop</button>
</body>
</html>
Funkcja setInterval() służy do ustawienia opóźnienia dla cyklicznie wywoływanych funkcji, takich jak funkcje animacji.
Możliwe jest anulowanie wykonania fukcji poprzez wywołanie window.clearInterval().
Jeżeli funkcja ma zostać wykonana tylko raz a nie być wykonywana cyklicznie to należy skorzystać z window.setTimeout().
{{ DOM0() }}
{{ languages( { "en": "en/DOM/window.setInterval", "fr": "fr/DOM/window.setInterval", "ja": "ja/DOM/window.setInterval", "pl": "pl/DOM/window.setInterval" } ) }}