Rookie javascripter在这里,我正在尝试为赌场创建一个骰子游戏,其中用户需要下注骰子将落在哪个号码上。我知道我需要使用if语句来确定猜测是否正确,并从总余额乘以或减去用户赌注。我一直试图解决这个问题一段时间,似乎没有取得多大进展。
我相信这是HTML所需的基本结构。
<html>
<h1>Rolling the Die</h1>
<h4>Can You Guess Correctly?</h4>
<div id="die1" class="dice"></div>
<br>
<form>
Guess: <input type="number" name="guess" id="guess" min="1" max="6">
Stake: <input type="number" name="stake" id="stake">
<br>
<br>
Balance: <span id="balance">1000</span>
</form>
<br>
<button onclick="rollDice()">Roll Dice</button>
</div> <!---end of wrapper--->
<script type="text/javascript" src="dice.js"></script>
</body>
</html>
但是,我的主要问题是javascript文件,因为我似乎无法按原样制作if语句。
//function called to initiate the roll
function rollDice() {
'use strict'
var balance = 1000; //declares balance
var guess = document.getElementById("guess"); //takes the users guess
var stake = document.getElementById("stake"); //takes the users stake
var die1 = document.getElementById("die1"); //provides the input for the die
var d1 = Math.floor(Math.random() * 6) + 1; //generates a random number between 1 and 6
die1.innerHTML = d1; //displays the number generated by the die
//if statement to determine whether the users guess was correct and calculate balance
if (d1 == guess) {
balance = balance + (stake * 5);
} else {
balance = balance - stake;
}
}
非常感谢帮助。
答案 0 :(得分:0)
您需要实际获取文本框的value
,而不是文本框本身。
例如,而不是使用
var guess = document.getElementById("guess");
使用
var guess = document.getElementById("guess").value;
此外,每次单击按钮时,您都会将balance
重置为1000
。您需要将balance
存储为运行总计,并在最后将其打印回HTML。目前,即使您正确计算balance
,您也无法使用它。