Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 试图找出为什么时钟并没有重置,顶部弹出的气球并没有在游戏中显示_Javascript_Html - Fatal编程技术网

Javascript 试图找出为什么时钟并没有重置,顶部弹出的气球并没有在游戏中显示

Javascript 试图找出为什么时钟并没有重置,顶部弹出的气球并没有在游戏中显示,javascript,html,Javascript,Html,这个游戏的目的是给气球充气,直到气球爆裂。计时器应该倒计时到零。一旦它达到零,它应该显示在“顶部弹出”下,有多少气球弹出的高分。现在发生的事情是时间不断递减为负数,而不是停在零上。此外,顶部下方未显示任何内容 我在控制台日志中收到以下消息,我现在不知道如何解释或解构这些消息。我对javascript非常陌生 以下是JS和HTML: 让startButton=document.getElementById('start-button')) 让充气按钮=document.getElementBy

这个游戏的目的是给气球充气,直到气球爆裂。计时器应该倒计时到零。一旦它达到零,它应该显示在“顶部弹出”下,有多少气球弹出的高分。现在发生的事情是时间不断递减为负数,而不是停在零上。此外,顶部下方未显示任何内容

我在控制台日志中收到以下消息,我现在不知道如何解释或解构这些消息。我对javascript非常陌生

以下是JS和HTML:

让startButton=document.getElementById('start-button'))
让充气按钮=document.getElementById('充气按钮')
//我们关心这些数据
单击计数=0
让高度=120
让宽度=100
假设通货膨胀率=20
设maxsize=300
让highestPopCount=0
让currentPopCount=0
让gameLength=5000
设ClockId=0
设剩余时间=0
函数startName(){
setAttribute(“已禁用”、“为真”)
充气按钮。移除属性(“禁用”)
startClock()
设置超时(停止游戏,游戏长度)
}
函数startClock(){
剩余时间=游戏长度
挂钟
ClockId=设置间隔(drawClock,1000)
}
功能停止时钟(时钟ID){
清除间隔(时钟ID)
}
函数drawClock(){
让countdownlem=document.getElementById(“倒计时”)
countdownElem.innerText=(剩余时间/1000).toString()
剩余时间-=1000
}
函数膨胀(){
点击计数++
高度+=通货膨胀率
宽度+=通货膨胀率
如果(高度>=maxsize){
日志(“弹出气球”)
当前PopCount++
高度=0
宽度=0
} 
画()
}
函数绘图(){
让BallooElement=document.getElementById(“气球”)
让我们单击CountElem=document.getElementById(“单击计数”)
让popCountElem=document.getElementById('pop-count')
让highPopCountElem=document.getElementById('high-pop-count'))
BallookElement.style.height=高度+px
BalloodElement.style.width=宽度+px
clickCountElem.innerText=clickCount.toString()
popCountElem.innerText=currentPopCount.toString()
highPopCount,innerText=highestPopCount.toString()
}
函数stopGame(){
console.log(“游戏结束”)
充气按钮.setAttribute(“已禁用”、“为真”)
startButton.removeAttribute(“已禁用”)
单击计数=0
高度=120
宽度=100
如果(最高PopCount>当前PopCount){
}
currentPopCount=0
秒钟
画()
}
正文{
背景色:小麦;
}
.气球{
高度:128px;
宽度:100px;
背景颜色:蓝色
;
边界半径:50%
;
}

气球爆炸
开始比赛
膨胀
气球爆炸了:
顶部弹出:
剩余时间:
0
修复ClockId变量的作用域。 在
stopClock
函数中,您要求使用
ClockId
参数,但您从未传递它,而是希望使用全局
ClockId
。更具体的作用域变量(参数)将接管该变量名

function stopClock(ClockId){
  clearInterval(ClockId)
}

/// Should be - 
function stopClock() {
  clearInterval(ClockId)
}

/// Note, I don't like using globals like you have here, but I get the low discipline on learning projects.
我还添加了分配最高pop计数所需的代码

  if (highestPopCount < currentPopCount) {
    highestPopCount = currentPopCount;
  }

气球爆炸
开始比赛
膨胀
气球爆炸了:
顶部弹出:
剩余时间:
0

highPopCount,innerText
我认为这不应该是commaYeah,我修复了那个,仍然不工作。感谢延迟响应,我发现的另一件事可能是名称不匹配,
let highPopCountElem=document.getElementById('high-pop-count')
,但该变量稍后在draw函数中引用为
highPopCount
谢谢John,我将尝试一下。我感谢你的帮助!看起来现在工作得很好。再次感谢。@DougHughes我很高兴它成功了!向上投票,接受答案是表达谢意的好方法!