代码改变世界

javascript两种定时器的使用及其清除

2014-05-13 12:05  盛世游侠  阅读(1395)  评论(0编辑  收藏  举报
<!--示例代码如下:-->
<!
DOCTYPE html> <html> <body> <p>A script on this page starts this clock:</p> <p id="demo"></p> <input type="button" value="停止" onclick="abc()"/> <input type="button" value="开始" onclick="cdc()"/> <script> var myVar; function cdc(){ myVar = setInterval(function(){myTimer()},1000); //alert("ddd"+myVar+'ddd'); } cdc(); function myTimer() { var d=new Date(); var t=d.toLocaleTimeString(); document.getElementById("demo").innerHTML=t; } function abc(){ for(var i=0;i<=myVar;i++){ clearInterval(i); //alert("ddd"+i+'ddd'); } } </script> </body> </html>

 

效果如下:

A script on this page starts this clock:

 

 

从这个例子我们可以看出使用和清除javascript两种定时器需要注意的一些细节:

1、清除定时器的方法,要放在保留定时器编号种子的变量作用域的范围内使用,这样清除方法才可以访问得到定时器编号种子,才能清除指定的定时器;

2、多次调用创建定时器的函数,可以在一个页面可以创建多个定时器,每个定时器都有各自不同的种子编号,清除时需要逐个清除;

3、种子编号是一个整数,从0开始;

4、创建定时器的方法,其第一个参数是一个函数,而不是一个变量或者一条语句;