为什么点start越多,跑的越快,

来源:8-6 取消计时器clearTimeout()

六叔886

2016-01-02 18:10

为什么点start越多,跑的越快,

写回答 关注

1回答

  • 李晓健
    2016-01-02 20:32:20
    <script type="text/javascript">
        var num=0;
        var i;
        function startCount(){
            //每次开始前,先判断是否也有一个定时在执行,如果有就清除掉
            if(i){
                clearTimeout(i);
            }
            var input = document.getElementById('count');
            num = parseInt(input.value) || num;
            num=num+1;
            input.value = num;
            i=setTimeout("startCount()",1000);
        }
        function stopCount(){
            clearTimeout(i)
        }
    </script>

    因为重复点击开始就是重复开启定时器,多个定时器同时运行 就会娈快

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468061 学习 · 21891 问题

查看课程

相似问题