区别:
setInterval函数的用法与setTimeout完全一致,区别仅仅在于setInterval指定某个任务每隔一段时间就执行一次,也就是无限次的定时执行。
取消定时器:(clearTimeout和clearInterval)
setTimeout和setInterval函数,都返回一个表示计数器编号的整数值,将该整数传入clearTimeout和clearInterval函数,就可以取消对应的定时器。
<script> //定时器 异步运行 function hello() { alert("hello"); } // window.setTimeout("hello()", 1000); //使用方法名字执行方法 var t1 = window.setTimeout(hello, 1000); var t2 = window.setTimeout("hello()", 3000); //使用字符串执行方法 window.clearTimeout(t1); //去掉定时器 </script>
实例:
1 <html> 2 <!-- 3 1.一般情况下setTimeout用于延迟执行某方法或功能, 4 2.setInterval则一般用于刷新表单,对于一些表单的假实时指定时间刷新同步 5 --> 6 <head> 7 <meta charset="UTF-8"> 8 <title>简单时长倒计时</title> 9 <SCRIPT type="text/javascript"> 10 var maxtime = 10 * 60; //一个小时,按秒计算,自己调整! 11 function CountDown() { 12 if (maxtime >= 0) { 13 minutes = Math.floor(maxtime / 60); 14 seconds = Math.floor(maxtime % 60); 15 msg = "距离结束还有" + minutes + "分" + seconds + "秒"; 16 document.all["timer"].innerHTML = msg; 17 if (maxtime == 5 * 60)alert("还剩5分钟"); 18 --maxtime; 19 } else{ 20 clearInterval(timer); 21 alert("时间到,结束!"); 22 } 23 } 24 timer = setInterval("CountDown()", 1000); 25 </SCRIPT> 26 </head> 27 <body> 28 <div id="timer" style="color:red"></div> 29 </body> 30 </html>