JS 定时器 setInterval() 和 setTimeout() 以及自己踩过的坑

js 定时器有以下两个方法:

  • setInterval() :按照指定的周期(以毫秒计)来调用函数或计算表达式。方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。
  • setTimeout() :在指定的毫秒数后调用函数或计算表达式。

setInterval()

语法

setInterval(code,millisec,lang)
参数 描述
code 必需。要调用的函数或要执行的代码串。
millisec 必须。周期性执行或调用 code 之间的时间间隔,以毫秒计。
lang 可选。 JScript | VBScript | JavaScript

以下实例在每 1000 毫秒执行 clock() 函数。实例中也包含了停止执行的按钮:

setTimeout()

语法

setTimeout(code,millisec,lang)
参数 描述
code 必需。要调用的函数后要执行的 JavaScript 代码串。
millisec 必需。在执行代码前需等待的毫秒数。
lang 可选。脚本语言可以是:JScript | VBScript | JavaScript

如果想要在一个函数中启用定时器  又想在另一个函数关闭这个函数 可以这样做:

var timer1 = null;

function start(){
if ( timer1 )
return;
timer1 = setInterval("test()",200);
}
function end(){
if ( timer1 )
{
clearInterval(timer1);
timer1 = null;
}
}

注意事项: 这里的 timer1 相当于setInterval 的 id 执行clearInterval(timer1)方法时 就是传入定时器 ID  进行停止的

=================踩过的坑=============

当你想要在zh执行函数里面放入参数时   最好使用以下方法 : 否则定时器不会执行. 只会执行里面的函数方法  代码如下:

===要执行的函数===

猜你喜欢

转载自blog.csdn.net/HandSome_He/article/details/81676640