清除计时器中间的问题

首先计时器函数setInterval()返回的是一个计时器的id,然后清除计时器函数clearInterval()中参数就是一个需要停止的计时器的id号。

具体使用如下:

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <title>小闹钟</title>
 </head>
 <body>
 <span id = "clock"></span>
 <script type = "text/javascript">
    var count = 0;
  //设置计时器
var clockId = window.setInterval("clock()",1000); function clock(){ var obj = document.getElementById("clock"); var time = new Date(); obj.innerHTML = time.toLocaleString(); count++; //清除计时器 if(count==5){ window.clearInterval(clockId); } } </script> </body> </html>

其中有一点需要注意一下,就是清除计时器的函数必须放在定时调用那个函数里面才可以,否则将一直得不到执行。

 

错误实例:

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <title>小闹钟</title>
 </head>
 <body>
 <span id = "clock"></span>
 <script type = "text/javascript">
    var count = 0;
    var clockId = window.setInterval("clock()",1000);
    function clock(){
        var obj = document.getElementById("clock");
        var time = new Date();
        obj.innerHTML = time.toLocaleString();    
        count++;
        
    }
    //清除计时器
        if(count==5){
            window.clearInterval(clockId);
        }
    
  </script>
 </body>
</html>

要是想不通可以自己调试一下!

 

posted @ 2017-07-04 14:48  学习丶笔记  Views(470)  Comments(0Edit  收藏  举报