为了账号安全,请及时绑定邮箱和手机立即绑定

如何在第二次点击的时候清除上一次的setInterval?

如何在第二次点击的时候清除上一次的setInterval?

繁花如伊 2019-02-25 12:19:52
用setInterval方法写了一个循环计时器,使毫秒数每过一秒加1。可当我第二次点击按钮执行该函数的时候,上一次的计时还存在,导致毫秒的速度越来越快。如何在第二次点击的时候清除上一次的计时器?
查看完整描述

3 回答

?
拉丁的传说

TA贡献1789条经验 获得超8个赞

     var timer = null;

        var i =0;

        var btn = document.getElementById('btn');

        btn.onclick = function(){

            if(timer){

                clearInterval(timer);

            }

                timer = setInterval(function(){

                    i++

                    console.log(i);

                },1000);

            

        }


查看完整回答
反对 回复 2019-03-05
?
大话西游666

TA贡献1817条经验 获得超14个赞

给个IF条件 判断是否存在这个定时器 存在的话就清除就是了


查看完整回答
反对 回复 2019-03-05
?
12345678_0001

TA贡献1802条经验 获得超5个赞

var cnt, handle 


$('#btn').click(function () {

  cnt = 0

  if (handle !== undefined) {

    clearInterval(handle)

  }

  handle = setInterval(function() {

    console.log(cnt++)

  }, 1000)

})

clearInterval 是重点


查看完整回答
反对 回复 2019-03-05
  • 3 回答
  • 0 关注
  • 1539 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信