最新的Web开发教程
 

窗口setTimeout() Method

<窗口对象

显示在3秒后一个警告框(3000 milliseconds)

setTimeout(function(){ alert("Hello"); }, 3000);
试一试»

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


定义和用法

所述setTimeout()方法调用的功能或毫秒的指定次数后计算表达式。

Tip: 1000毫秒= 1秒。

提示:只执行一次的功能。 如果您需要重复执行,使用setInterval()方法。

提示:使用clearTimeout()方法来防止函数运行。


浏览器支持

在表中的数字规定,完全支持方法的第一个浏览器版本。

方法
setTimeout() 1.0 4 1.0 1.0 4

句法

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

参数值

参数 描述
function 需要。 将要执行的功能
milliseconds 需要。 毫秒数执行代码之前要等待
param1,param2,... 可选的。 额外的参数传递给功能 (不支持在IE9和更早版本)

技术细节

返回值: 一个数字,表示被设置的定时器的ID值。 使用此值与clearTimeout()方法来取消计时器

例子

更多示例

您也可以参考"named"功能; 显示在3秒后一个警告框(3000 milliseconds)

var myVar;

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

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

显示计时文本:

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

打开一个新的窗口和三个秒(3000毫秒)后关闭窗口:

var myWindow = window.open("", "", "width=200, height=100");
myWindow.document.write("<p>This is 'myWindow'</p>");
setTimeout(function(){ myWindow.close() }, 3000);
试一试»

使用clearTimeout()以防止功能运行:

var myVar;

function myFunction() {
    myVar = setTimeout(function(){ alert("Hello") }, 3000);
}

function myStopFunction() {
    clearTimeout(myVar);
}
试一试»

伯爵永远 - 但可以停止计数的能力:

function startCount()
function stopCount()
试一试»

时钟的定时事件创建的:

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

参数传递给alertFunc功能(does not work in IE9 and earlier)

var myVar;

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

但是,如果您使用匿名函数,它会在所有的浏览器:

var myVar;

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

相关页面

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

窗口对象: href="met_win_setinterval.html"> setInterval() Method

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


<窗口对象