Example
Alert "Hello" every 3 seconds (3000 milliseconds):
setInterval(function(){ alert("Hello"); }, 3000);
Try it Yourself »
More "Try it Yourself" examples below.
Definition and Usage
The setInterval() method calls a function or evaluates an expression at specified intervals (in milliseconds).
The setInterval() method will continue calling the function until clearInterval() is called, or the window is closed.
The ID value returned by setInterval() is used as the parameter for the clearInterval() method.
Tip: 1000 ms = 1 second.
Tip: To execute a function only once, after a specified number of milliseconds, use the setTimeout() method.
Browser Support
The numbers in the table specify the first browser version that fully supports the method.
Method | |||||
---|---|---|---|---|---|
setInterval() | 1.0 | 4.0 | 1.0 | 1.0 | 4.0 |
Syntax
setInterval(function,milliseconds,param1,param2,...)
Parameter Values
Parameter | Description |
---|---|
function | Required. The function that will be executed |
milliseconds | Required. The intervals (in milliseconds) on how often to execute the code |
param1,param2,... | Optional. Additional parameters to pass to the function (Not supported in IE9 and earlier) |
Technical Details
Return Value: | A Number, representing the ID value of the timer that is set. Use this value with the clearInterval() method to cancel the timer |
---|
More Examples
Example
You can also refer to a "named" function; Alert "Hello" every 3 seconds (3000 milliseconds):
var myVar;
function myFunction() {
myVar =
setInterval(alertFunc, 3000);
}
function alertFunc() {
alert("Hello!");
}
Try it Yourself »
Example
Display the current time (the setInterval() method will execute the function once every 1 second, just like a digital watch):
var myVar = setInterval(function(){ myTimer() }, 1000);
function myTimer()
{
var d = new Date();
var t = d.toLocaleTimeString();
document.getElementById("demo").innerHTML = t;
}
Try it Yourself »
Example
Using clearInterval() to stop time in the previous example:
var myVar = setInterval(function(){ myTimer() }, 1000);
function myTimer()
{
var d = new Date();
var t = d.toLocaleTimeString();
document.getElementById("demo").innerHTML = t;
}
function myStopFunction()
{
clearInterval(myVar);
}
Try it Yourself »
Example
Using setInterval() and clearInterval() to create a dynamic progress bar:
function move() {
var elem = document.getElementById("myBar");
var width = 0;
var id = setInterval(frame, 10);
function frame() {
if (width == 100) {
clearInterval(id);
} else {
width++;
elem.style.width = width + '%';
}
}
}
Try it Yourself »
Example
Toggle between two background colors once every 300 milliseconds:
var myVar = setInterval(function(){ setColor() }, 300);
function
setColor() {
var x = document.body;
x.style.backgroundColor = x.style.backgroundColor == "yellow" ? "pink" :
"yellow";
}
function stopColor() {
clearInterval(myVar);
}
Try it Yourself »
Example
Pass parameters to the alertFunc function (does not work in IE9 and earlier):
var myVar;
function myStartFunction() {
myVar
= setInterval(alertFunc, 2000, "First param", "Second param");
}
Try it Yourself »
However, if you use an anonymous function, it will work in all browsers:
var myVar;
function myStartFunction() {
myVar =
setInterval(function(){ alertFunc("First param", "Second param"); },
2000);
}
Try it Yourself »
Related Pages
Window Object: href="met_win_clearinterval.html">clearInterval() Method
Window Object: href="met_win_settimeout.html">setTimeout() Method
Window Object: href="met_win_cleartimeout.html">clearTimeout() Method
< Window Object