首页 > 代码库 > JS中自定义定时器

JS中自定义定时器

有时,处于需求的原因,我们需要在JS中写一个方法,然后让它在某一时刻执行,即需要在JS中写一个定时器,当时间达到要求时间时,需要执行的方法自动执行,下面小编简单说一下我是怎么实现的(转载请注明转载地址:http://blog.csdn.net/u012116457)

           var tMinutes=0;
           var tHours=0;
           var go;
           function dingshi(hours,minutes){
              tHours = hours;
              tMinutes = minutes;
              go=setInterval(run,3000);
           }
           function run(){
                   var date=new Date();
                   if((date.getMinutes()-tMinutes==0)
                           &&(date.getHours()-tHours==0)){
                		 clearInterval(go);                		   
                		 getData();   //要执行的方法
                	}   
                   }
           }
在dingshi中的参数hours,minutes是要执行的方法开始的时间,这里只是要求小时和分钟,具体情况下大家可自行添加参数,但要注意修改run方法中if中的判断条件。

getData为要执行的方法,也是根据实际情况自行修改,使用时调用dingshi方法即可。

还有要注意的是为了防止浏览器崩溃,setInterval的第二个参数我定为3000毫秒,即3秒,如果大家定时要求精确到秒,这里应该改成1000,否则可能会错过你设定的时间。

JS中自定义定时器