首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计数器到达0或复位后的清除间隔

计数器到达0或复位后的清除间隔
EN

Stack Overflow用户
提问于 2019-01-14 20:19:22
回答 3查看 982关注 0票数 0

我试图做简单的游戏,但我有问题管理计数器和清除时间后,计数器达到0或我点击重置按钮。它在达到0时工作,但是当我尝试实现它以重置按钮时,计数器正在重置,然后以双倍的速度运行。

代码语言:javascript
复制
let counter = 60;
let healthPoints = 3;
let points = 0;

document.querySelector('.reset').addEventListener('click', resetGame);


function countTime() {
    const timer = document.querySelector('.timer');
    const countTime = setInterval(function () {
        counter--;
        timer.innerHTML = + counter;
        if (counter == 0) {
            alert('Game over')
            clearInterval(countTime);
        }
    }, 1000)
}

function resetGame() {
    newBoard();
    counter = 60;
    healthPoints = 4;
    points = 0;
    clearInterval(countTime);
}
EN

Stack Overflow用户

回答已采纳

发布于 2019-01-14 20:30:50

传递给countTime函数中的clearInterval函数的resetGame参数是对名为countTime的函数的引用。您需要重命名该变量并在全局声明它:

代码语言:javascript
复制
let counter = 60;
let healthPoints = 3;
let points = 0;
let t = null;
document.querySelector('.reset').addEventListener('click', resetGame);
function countTime() {
    const timer = document.querySelector('.timer');
    t = setInterval(function () {
    counter--;
    timer.innerHTML = + counter; 
    if (counter == 0) {
      alert('Game over')     
      clearInterval(t);
    }
   }, 1000)
 }

function resetGame() {
  newBoard();
  counter = 60;
  healthPoints = 4;
  points = 0;
  clearInterval(t);
}
票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54188583

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档