setTimeout() 和 setInterval()

2019-01-17  本文已影响0人  JuneY

1、setTimeout()

setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。

可使用 clearTimeout() 方法来阻止函数的执行。

(1)语法

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

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

(2)参数

  code/function  =>必需。要调用一个代码串,也可以是一个函数。

  milliseconds  =>可选。执行或调用 code/function 需要等待的时间,以毫秒计。默认为 0。

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

(3)返回值

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

例子

//3秒钟隐藏 div 标签

setTimeout(function() { $("#divShowInfo").fadeOut("slow"); }, 3000);

2、setInterval()

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

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

语法、参数、返回值 同setTimeout()

例子

var myVar;

function myFunction() {

    myVar = setInterval(alertFunc, 3000);

}

function alertFunc() {

    alert("Hello World!");

}

3、 clearTimeout()

例子

var myVar;

function myFunction()

{

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

}

function myStopFunction()

{

    clearTimeout(myVar);

}

setTimeout() 和 clearTimeout() 结合的例子  计数器,可停止

<button onclick="startFun()">开始</button>

<input type="text" id="txtNum">

<button onclick="stopFun()">停止</button>

<script>

var num = 0;

var t;

var begin=0;

function AddNum()

{

    $("#txtNum").val()=num ;

    num+=1;

    t=setTimeout(function(){AddNum()},1000);

}

function startFun()

{

    if(!begin)

    {

      begin=1;

      AddNum();

    }

}

function stopFun()

{

  clearTimeout(t);

  begin=0;

}

</script>

上一篇下一篇

猜你喜欢

热点阅读