【发布时间】:2020-07-26 14:34:51
【问题描述】:
我的目标是跟踪游戏中的尝试。这是我目前的代码。
我编辑了这篇文章以了解 count = 0 和 count = 1 之间的区别。
let randomNumber = Math.floor(Math.random() * 30) + 1
let result = document.querySelector(".result")
let attempt = document.getElementById("attempt")
let button = document.getElementById("button")
let guess = document.getElementById("guess")
let count = 1
button.addEventListener("click", checkGuess)
function checkGuess() {
let guessValue = document.getElementById("guess").value;
if (guessValue < randomNumber) {
attempt.innerHTML = "Attempt n: " + count
result.innerHTML = "Your guess is too low";
count++
} else if (guessValue > randomNumber) {
attempt.innerHTML = "Attempt n: " + count
result.innerHTML = "Your guess is too high";
count++
} else {
attempt.innerHTML = "Attempt n: " + count
result.innerHTML = "You guessed correctly in " + count++ + "
attempts";
}
}
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Guess the number</title>
</head>
<body>
<h1>GUESS A NUMBER:</h1>
<p>Enter a guess:</p>
<input type="number" id="guess">
<input type="submit" value="SUBMIT" id="button">
<div>
<p class="attempt"></p>
<p class="result"></p>
</div>
<script src="script.js"></script>
</body>
我不明白为什么attempt.innerHTML 不起作用。它不像“结果”那样显示在页面上。
【问题讨论】:
-
let attempt = 1,这会在您的函数中创建一个名为attempt的变量,该变量设置为一个数字。 -
哦,多么愚蠢的错误!我把变量和计数混淆了!哈。谢谢!
-
您的函数外部有一个名为
attempt的变量引用了一个HTML 元素,但您的函数内部也有一个名为attempt的变量,它是一个数字。做attempt.innerHTML就像做(1).innerHTML如果attempt是1
标签: javascript html innerhtml