Window setTimeout() Method
Example
Display an alert box after 3 seconds (3000 milliseconds):
setTimeout(function(){ alert("Hello"); }, 3000);
Try it yourself »
More "Try it Yourself" examples below.
Definition and Usage
The setTimeout() method calls a function or evaluates an expression after a specified number of milliseconds.
Tip: 1000 ms = 1 second.
Tip: The function is only executed once. If you need to repeat execution, use the setInterval() method.
Tip: Use the clearTimeout() method to prevent the function from running.
Browser Support
The numbers in the table specify the first browser version that fully supports the method.
Method | |||||
---|---|---|---|---|---|
setTimeout() | 1.0 | 4.0 | 1.0 | 1.0 | 4.0 |
Syntax
setTimeout(function,milliseconds,param1,param2,...)
Parameter Values
Parameter | Description |
---|---|
function | Required. The function that will be executed |
milliseconds | Required. The number of milliseconds to wait before executing 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 clearTimeout() method to cancel the timer |
---|
More Examples
Example
You can also refer to "named" function; Display an alert box after 3 seconds (3000 milliseconds):
var myVar;
function myFunction() {
myVar =
setTimeout(alertFunc, 3000);
}
function alertFunc() {
alert("Hello!");
}
Try it yourself »
Example
Display a timed text:
var x = document.getElementById("txt");
setTimeout(function(){ x.value="2 seconds" }, 2000);
setTimeout(function(){ x.value="4 seconds" }, 4000);
setTimeout(function(){ x.value="6
seconds" }, 6000);
Try it yourself »
Example
Open a new window and close the window after three seconds (3000 milliseconds):
var myWindow = window.open("", "", "width=200, height=100");
myWindow.document.write("<p>This is 'myWindow'</p>");
setTimeout(function(){ myWindow.close() }, 3000);
Try it yourself »
Example
Using clearTimeout() to prevent the function to run:
var myVar;
function myFunction() {
myVar = setTimeout(function(){ alert("Hello") }, 3000);
}
function myStopFunction() {
clearTimeout(myVar);
}
Try it yourself »
Example
Count forever - but with the ability to stop the count:
function startCount()
function stopCount()
Try it yourself »
Example
A clock created with timing events:
function startTime() {
var today = new Date();
var h =
today.getHours();
var m = today.getMinutes();
var s = today.getSeconds();
// add a zero in front of numbers<10
m = checkTime(m);
s = checkTime(s);
document.getElementById("txt").innerHTML = h+ ":" + m + ":" + s;
t = setTimeout(function(){ startTime() }, 500);
}
function checkTime(i) {
if (i<10) {
i = "0" + i;
}
return i;
}
Try it yourself »
Example
Pass parameters to the alertFunc function (does not work in IE9 and earlier):
var myVar;
function myStartFunction() {
myVar
= setTimeout(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 =
setTimeout(function(){ alertFunc("First param", "Second param"); },
2000);
}
Try it yourself »
Related Pages
Window Object: clearTimeout() Method
Window Object: setInterval() Method
Window Object: clearInterval() Method
Window Object