在这个项目中,我需要设置最多10次猜测,表明猜中的是什么数字,并在每场比赛结束时将这些结果保留在屏幕上而不覆盖以前的猜测。使用while循环的猜数游戏
每组猜测输出都需要进行编号以指示已进行了多少次猜测。对于输出,我需要使用innerHTML。用户将猜测从1到999的数字。我必须使用while循环。
到目前为止,这是我工作的代码,我有一些错误,它不工作。任何人都可以让我在正确的方向完成这个代码?
,我发现的错误,当我检查的文件是checkGuess()函数和具有消息“无法读取属性‘价值’空的”
<script type="text/javascript">
var randomNumber = Math.floor(Math.random() * 100) + 1;
var guesses = document.getElementById("guesses");
var lastResult = document.getElementById("lastResult");
var lowOrHi = document.getElementById("lowOrHi");
var guessSubmit = document.getElementById("guessSubmit");
var guessField = document.getElementById("guessField");
var guessCount = 1;
function checkGuess() {
var userGuess = Number(guessField.value);
guesses.innerHTML += userGuess + "";
}
while (guessCount == 10) {
lastResult.innerHTML = "!!!GAME OVER!!!";
disableForm();
} else {
if (userGuess == randomNumber) {
lastResult.innerHTML = "Congratulations! You got it right!";
lowOrHi.innerHTML = "";
disableForm();
} else {
lastResult.innerHTML = "Wrong!";
if (userGuess < randomNumber) {
lowOrHi.innerHTML = "Your guess is too low!";
} else if (userGuess > randomNumber) {
lowOrHi.innerHTML = "Your guess is too high!";
}
}
guessCount++;
guessField.value = "";
}
}
function disableForm() {
var wholeForm = document.querySelector(".form"); // grab a reference to the whole form (the contents of the div with class form)
wholeForm.style.opacity = 0.5; // change the opacity of the form to 0.5
guessField.setAttribute("disabled", "disabled");
guessSubmit.setAttribute("disabled", "disabled"); // disable the form field and submit button so they can no longer be used
}
guessSubmit.onclick = checkGuess;
</script>
</head>
<body>
<h1>Number guessing game</h1>
<p id="guesses"></p>
<p id="lastResult"></p>
<p id="lowOrHi"></p>
<div class="form">
<label for="guessField">Enter your next guess: </label>
<input type="text" id="guessField">
<button id="guessSubmit">Enter Guess</button>
</div>
<p></p>
</body>
</html>
什么错误? – michaelpri
什么是错误,哪些不起作用? – Aify
我无法解决的错误之一是:function checkGuess() var userGuess = Number(guessField.value); guesses.innerHTML + = userGuess +“”; } –