每秒显示"Hello"(1000 毫秒):
setInterval(function () {element.innerHTML += "Hello"}, 1000);
亲自试一试 »
每秒调用displayHello:
setInterval(displayHello, 1000);
亲自试一试 »
下面有更多示例。
这个setInterval()
方法以指定的时间间隔(以毫秒为单位)调用函数。
这个setInterval()
方法继续调用该函数直到clearInterval()
被调用,或者窗口被关闭。
1 秒 = 1000 毫秒。
要仅执行该函数一次,请使用setTimeout()
方法代替。
要清除间隔,请使用ID从 setInterval() 返回:
myInterval = setInterval(
function,
milliseconds);
然后你可以通过调用clearInterval()来停止执行:
clearInterval(myInterval);
setInterval(
function, milliseconds, param1, param2, ...)
Parameter | Description |
function | Required. The function to execute |
milliseconds | Required. The execution interval. If the value is less than 10, 10 is used |
param1, param2, ... | Optional. Additional parameters to pass to the function Not supported in IE9 and earlier. |
类型 | 描述 |
一个号码 | 定时器的id。 将此 id 与clearInterval() 一起使用来取消计时器。 |
像数字手表一样显示时间:
setInterval(myTimer, 1000);
function myTimer() {
const date = new Date();
document.getElementById("demo").innerHTML = date.toLocaleTimeString();
}
亲自试一试 »
使用clearInterval()停止数字手表:
const myInterval = setInterval(myTimer, 1000);
function myTimer() {
const date = new Date();
document.getElementById("demo").innerHTML = date.toLocaleTimeString();
}
function myStopFunction() {
clearInterval(myInterval);
}
亲自试一试 »
使用 setInterval() 和clearInterval() 创建动态进度条:
function move() {
const element = document.getElementById("myBar");
let width = 0;
let id = setInterval(frame, 10);
function frame() {
if (width == 100) {
clearInterval(id);
} else {
width++;
element.style.width = width + '%';
}
}
}
亲自试一试 »
每 500 毫秒在两种背景颜色之间切换一次:
const myInterval = setInterval(setColor, 500);
function setColor() {
let x = document.body;
x.style.backgroundColor = x.style.backgroundColor == "yellow" ? "pink" : "yellow";
}
function stopColor() {
clearInterval(myInterval);
}
亲自试一试 »
将参数传递给函数(在 IE9 及更早版本中不起作用):
setInterval(myFunc, 2000, "param1", "param2");
亲自试一试 »
但是,如果您使用匿名函数,它适用于所有浏览器:
setInterval(function() {myFunc("param1", "param2")}, 2000);
亲自试一试 »
setInterval()
所有浏览器都支持:
Chrome | Edge | Firefox | Safari | Opera | IE |
Yes | Yes | Yes | Yes | Yes | Yes |
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!