您现在的位置是:php教程网 > JavaScript > JavaScript >

Java教程 2019-10-25 18:46 PHP学习

Window setInterval() 方法

实例
 
每三秒(3000 毫秒)弹出 "Hello" :
setInterval(function(){ alert("Hello"); }, 3000);
使用一个代码字符串:
setInterval('alert("Hello");', 3000);
定义和用法
 
setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。
 
setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。
 
提示: 1000 毫秒= 1 秒。
 
提示: 如果你只想执行一次可以使用 setTimeout() 方法。

浏览器支持

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

方法 bsChrome bsEdge bsFirefox bsSafari bsOpera
setInterval() 1.0 4.0 1.0 1.0 4.0
语法
 
setInterval(code, milliseconds);
setInterval(function, milliseconds, param1, param2, ...)
 
参数 描述
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 的执行:
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 函数 ( IE9 及其更早版本不支持):
var myVar;
 
function myStartFunction() {
    myVar = setInterval(alertFunc, 2000, "saishikang", "Google");
}
但是,如果使用匿名函数,则所有浏览器都支持:
var myVar;
 
function myStartFunction() {
    myVar = setInterval(function(){ alertFunc("saishikang", "Google"); }, 2000);

上一篇:上一篇:JavaScript 总结

下一篇:下一篇:没有了