天天看点

Window setInterval() 方法

Window setInterval() 方法

Window 对象

每三秒(3000 毫秒)弹出 "Hello" :

setInterval(function(){ alert("Hello"); }, 3000);

使用一个代码字符串:

setInterval('alert("Hello");', 3000);

setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。

setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。

<b>提示:</b> 1000 毫秒= 1 秒。

提示: 如果你只想执行一次可以使用 setTimeout() 方法。

表格中的数字表示支持该属性的第一个浏览器版本号。

方法

setInterval()

1.0

4.0

参数

描述

code/function

必需。要调用一个代码串,也可以是一个函数。

milliseconds

必须。周期性执行或调用 code/function 之间的时间间隔,以毫秒计。

param1, param2, ...

可选。 传给执行函数的其他参数(IE9 及其更早版本不支持该参数)。

返回值:

返回一个 ID(数字),可以将这个ID传递给clearInterval(),clearTimeout() 以取消执行。

你可以通过调用一个已命名的函数,每三秒(3000 毫秒)弹出 "Hello":

var myVar;

function myFunction() {

myVar = setInterval(alertFunc, 3000);

}

function alertFunc() {

alert("Hello!");

显示当前时间( setInterval() 方法会每秒执行一次函数,类似手表功能):

var myVar = setInterval(function(){ myTimer() }, 1000);

function myTimer() {

var d = new Date();

var t = d.toLocaleTimeString();

document.getElementById("demo").innerHTML = t;

使用 clearInterval() 来停止 setInterval 的执行:

function myStopFunction() {

clearInterval(myVar);

使用 setInterval() 和 clearInterval()来创建动态进度条:

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 + '%';

每 300 毫秒切换背景颜色:

var myVar = setInterval(function(){ setColor() }, 300);

function setColor() {

var x = document.body;

x.style.backgroundColor = x.style.backgroundColor == "yellow" ? "pink" : "yellow";

function stopColor() {

传递参数给 alertFunc 函数 ( IE9 及其更早版本不支持):

function myStartFunction() {

myVar = setInterval(alertFunc, 2000, "Runoob", "Google");

但是,如果使用匿名函数,则所有浏览器都支持:

myVar = setInterval(function(){ alertFunc("Runoob", "Google"); }, 2000);

Window 对象: clearInterval() 方法

Window 对象: setTimeout() 方法

Window 对象: clearTimeout() 方法

Window setInterval() 方法