为什么函数不运行
Why does function not run?
我有一个div,它有html代码,在用户玩游戏时显示时钟,如下所示。
<td onclick="showClock()" id="clockSection">DAY 1</td>
我想让时间在每次满足条件时都会更新(例如,从"第1天"变成"第1晚"或"第2天")。
我为此制作了一个函数updateClock()
,它可以正常工作,正如预期的那样。
function updateTime() {
if (minutes >= 60) {
minutes -= 60
hours += 1
updateTime()
} else if (minutes >= 10) {
minutesDisplay = minutes
} else {
minutesDisplay = "0" + minutes
}
if (hours >= 13) {
hours -= 12
if (dayHalf === "am") {
dayHalf = "pm"
} else {
dayCount += 1
dayHalf = "am"
var clockDisplay = document.getElementById("clockSection")
clockDisplay.innerHTML = displayTime
}
}
if (hours > 6 && dayHalf === "pm") {
timeEstimate = "Night"
displayTime = timeEstimate + " " + dayCount
} else if (hours < 7 && dayHalf === "am") {
timeEstimate = "Night"
displayTime = timeEstimate + " " + dayCount
} else {
timeEstimate = "Day"
displayTime = timeEstimate + " " + dayCount
}
if (displayTime !== timeEstimate + " " + dayCount) {
clock.innerHTML = displayTime
}
clock.innerHTML = displayTime
}
不幸的是,当我想从我的另一个函数beginGame()
(它启动整个游戏,如下所示)中调用updateClock()
时,整个beginGame()函数没有运行。
function beginGame(){
updateTime()
...
//the rest of my code, which when tested without the above updateTime() has NO PROBLEMS.
}
我试着运行这个并在两个函数中设置断点,结果发现它们都没有运行。然而,当我从beginGame()
中取出updateTime()
时,或者如果我取出最后一个clock.innerHTML = displayTime
,它可以正常运行(不幸的是,结果不是我想要的)。为什么会这样?我确信我在某个地方犯了一些语法错误,但无法发现。谢谢。
完整程序的演示在tdat.byethost10.com上
https://jsfiddle.net/hundotte/vb3je10p/1/
好的。我终于解决了这个问题。这似乎是一个轻微的拼写错误,如果你查看JSFiddle,你会发现它。在beginGame()
函数中,我将id设置为"clock"而不是"clockDisplay"。谢谢你们的尝试,伙计们!我真的很感激。
相关文章:
- jQuery在元素的上下文中运行函数
- Promise函数在.then之后未运行函数化
- 在.append之后运行函数
- 在on.change事件之后运行函数
- 如果文本或值以字符开头,请运行函数
- 如何在节点模块中从命令行运行函数
- 在Fancybox中提交表单时运行函数
- Don'如果字段为空,则不运行函数
- Javascript:如何在页面重新加载后运行函数
- 成功ajax:如果是200状态代码,则运行函数else另一个函数
- 运行函数ifsuccess($.ajax)有200个状态代码
- JavaScript只有在最后一次被调用时才运行函数
- 在异步AJAX调用完成后,通过变量运行函数
- ng中继器打印结果0;当我运行函数时
- 谷歌扩展:如何在弹出窗口中按下按钮时在我的javascript文件中运行函数
- 获取对在 JavaScript 中运行函数的对象的引用
- 运行函数时出错
- 节点.js子进程中的运行函数
- $.getJSON 在返回数据后不会运行函数
- 如果onchange为true,如何运行函数