更何况不过刚好 2021-11-04 09:41 采纳率: 86.4%
浏览 106
已结题

同一个按钮开始停止计时器

我需要同一个按钮设置点击开始或者停止计时器
第一次点击计时器开始第二次点击计时器结束,但是因为定时器是异步函数,设置一个布尔值的话写在外面不太好因为定时器还没有开始他就开始了,如果写在里面的话也不太好,因为这个计时器是要一直执行下去的,数字减了一次之后这个布尔值就变了,所以实在是不知道该怎么做

  • 写回答

2条回答 默认 最新

  • pp泉 2021-11-04 09:49
    关注
    
    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title></title>
            <style>
    
            </style>
        </head>
        <body>
            <input type="button" value="开始" onclick="a()"/>
            <input type="text" id="t" />
            
            <script>
                var n = 0;
                var x = 1;
                function a(){
                    x = x + 1
                    b()
                }
                function b(){
                    var timer = setInterval(() => {
                        
                        if( x % 2 == 0){
                            n = n + 1
                            document.getElementById('t').value = n
                        }
                        else{
                            clearInterval(timer)
                        }
                    },1000)
                }
    
                    // document.getElementById('t').value = 10
                
            </script>
            
        </body>
    </html>
    

    如有帮助请采纳

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月10日
  • 已采纳回答 11月5日
  • 创建了问题 11月4日

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题