Javascript计时问题

时间:2009-06-13 18:00:06

标签: javascript html timing

我不会在一定时间内运行一段代码,然后在完成后继续使用另一段代码。

6 个答案:

答案 0 :(得分:2)

使用setTimeout()可能就是你想要的。例如......

<script type="text/javascript">
    function YourFunction()
    {
        alert('Hello Stackoverflow');
    }

    window.setTimeout(YourFunction, 1000);
</script>

希望有所帮助

答案 1 :(得分:2)

这就是你要怎么做的,使用setTimeout函数,它将代码作为第一个参数调用,以及在调用它之前应该等待多长时间(以毫秒为单位)作为第二个参数:

function callWhenDone() {
    // code to call when timeout finishes
}

setTimeout(function() {
    // initial code to run
    callWhenDone();
}, 5000); // 5000 = run in 5 seconds

由于Javascript的性质,您必须在其自己的函数中完成超时之后封装您想要运行的代码,否则它将在超时完成之前运行。这本质上是callback,它是Javascript基于事件的本质的重要组成部分。

答案 2 :(得分:0)

您需要使用setTimeout()功能。

答案 3 :(得分:0)

setTimeout - 在一段时间间隔后执行代码

clearTimeout - 取消setTimeout()

更多详情here

答案 4 :(得分:0)

使用setTimeout

setTimeout(function() {
    // code here
    // you can use it recursively
    //   setTimeout(...);
  },
  1000 // 1000 miliseconds (= 1 second)
);

setInterval类似setTimeout,但重复重复代码。

答案 5 :(得分:0)

<script type="text/javascript">

var timer = setInterval("firstFunction()","1000"); //every second call firstFunction()
var i = 0;

function firstFunction()
{

    //first code

    i++;
    if(i == 3)
    {
        clearInterval(timer);
        secondFunction();
    }
}

function secondFunction()
{
    //second code
    alert("done!");
}

</script>