最新的Web開發教程
 

窗口setInterval() Method

<窗口對象

警報"Hello"每3秒(3000 milliseconds)

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

更多"Try it Yourself"下面的例子。


定義和用法

所述setInterval()方法調用的功能或在指定的時間間隔計算表達式(in milliseconds)

setInterval()方法會繼續調用,直到函數clearInterval()被調用時,或關閉窗口。

返回的ID值setInterval()被用作參數clearInterval()方法。

Tip: 1000毫秒= 1秒。

提示:要執行的函數只有一次,毫秒指定次數後,可使用setTimeout()方法。


瀏覽器支持

在表中的數字規定,完全支持方法的第一個瀏覽器版本。

方法
setInterval() 1.0 4 1.0 1.0 4

句法

setInterval( function,milliseconds,param1,param2,... )

參數值

參數 描述
function 需要。 將要執行的功能
milliseconds 需要。 該時間間隔(in milliseconds)關於如何經常執行代碼
param1,param2,... 可選的。 額外的參數傳遞給功能 (不支持在IE9和更早版本)

技術細節

返回值: 一個數字,表示被設置的定時器的ID值。 使用此值與clearInterval()方法來取消計時器

例子

更多示例

您也可以指"named"功能; 警報"Hello"每3秒(3000 milliseconds)

var myVar;

function myFunction() {
    myVar = setInterval(alertFunc, 3000);
}

function alertFunc() {
    alert("Hello!");
}
試一試»

顯示當前的時間(the setInterval()方法執行的函數每隔1秒一次,就像一個數字手錶):

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

function myTimer() {
    var d = new Date();
    var t = d.toLocaleTimeString();
    document.getElementById("demo").innerHTML = t;
}
試一試»

使用clearInterval()在上例中,停止時間:

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);
}
試一試»

使用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() {
    clearInterval(myVar);
}
試一試»

參數傳遞給alertFunc功能(does not work in IE9 and earlier)

var myVar;

function myStartFunction() {
    myVar = setInterval(alertFunc, 2000, "First param", "Second param");
}
試一試»

但是,如果您使用匿名函數,它會在所有的瀏覽器:

var myVar;

function myStartFunction() {
    myVar = setInterval(function(){ alertFunc("First param", "Second param"); }, 2000);
}
試一試»

相關頁面

窗口對象: href="met_win_clearinterval.html"> clearInterval() Method

窗口對象: href="met_win_settimeout.html"> setTimeout() Method

窗口對象: href="met_win_cleartimeout.html"> clearTimeout() Method


<窗口對象