一天一点前端知识

定时器

2017-11-20  本文已影响23人  akubaba

一、设置定时器(setInterval)、清除定时器(clearInterval)

参数1:接受一个字符串,这个字符串是js代码, 还可以接受一个函数对象。
参数2:接受一个整数,单位是毫秒。
返回值::打开的定时器的ID
如:
每隔参数2毫秒数执行参数1代码或函数:

window.setInterval("alert('aaa');", 3000); //3秒
var ID = window.setInterval(fun1, 3000);
function fun1(){
    alert('bbb');
}
//clearInterval ==>  清除定时器
window.clearInterval(ID);

实现秒表:

<body>
   <input type="text" size="30" id="timing">
   <input type="button" id="two" value="开始" onclick="fun1()">
   <input type="button" id="end" value="结束" onclick="fun2()">
   <script>
      var id;
      function fun1() {
          setTime();
          if(!id){//防止产生多个定时器
                id=window.setInterval(setTime,1000);
         }
        }
        function fun2() {
         window.clearInterval(id);
         id=undefined;
        }
        function setTime() {
            //1、获得当前时间
            var now=new Date();
         var res=now.toLocaleString();
            //2、交给文本输入框显示
         var timing=document.getElementById('timing');
         timing.value=res;
        }
   </script>
</body>

二、设置定时器(setTimeout)、清除定时器(clearTimeout).

参数1:接受一个字符串,这个字符串是js代码。还可以接受一个函数对象。
参数2:接受一个整数,单位是毫秒。
返回值: 打开的定时器的ID
参数2毫秒后执行参数1代码或函数。(只执行一次)

var id;
function fun1() {
    if(id){
              fun2();
   }
    setTime();
    id=setTimeout(fun1,1000);
      }
      function fun2() {
   window.clearTimeout(id);
   id=undefined;
      }
上一篇 下一篇

猜你喜欢

热点阅读