真正基本的功能,我有一个模拟硬币翻转的按钮,我想总是显示" head"首先然后在第一次输入之后随机化,当前代码不起作用,并且从第一次单击开始随机化。
HTML:
<button id = "riggedCoin" onclick = "riggedCoinFlip()"> Rigged Coin </button>
<h1 id ="h2"> Coin Flip </h1>
JS:
function riggedCoinFlip() {
document.getElementById("h2").innerHTML = ("Heads!");
var coinFace = Math.floor(Math.random() * 2);
if (coinFace === 0) {
var h1 = document.getElementById("h2").innerHTML = ("Heads!");
} else {
var h1 = document.getElementById("h2").innerHTML = ("Tails!");
}
}
答案 0 :(得分:4)
首先, #h2
元素已包含 Coin Flip
文字。所以,我们可以用它来第一次检查。 我们不需要另外的变量来检查它。
我已经为您简化了解决方案。您可以尝试:
function riggedCoinFlip() {
var el = document.getElementById("h2");
if (el.innerHTML === " Coin Flip ") {
el.innerHTML = "Heads!";
} else {
el.innerHTML = (Math.floor(Math.random() * 2) === 0
? "Heads" : "Tails") +"!";
}
}
&#13;
<button id="riggedCoin" onclick="riggedCoinFlip()">Rigged Coin</button>
<h1 id="h2"> Coin Flip </h1>
&#13;
答案 1 :(得分:1)
您可以使用一个变量并在第一次单击后更改它,因此在更改var之后您可以使用随机。
var random = false;
function riggedCoinFlip() {
document.getElementById("h2").innerHTML = ("Heads!");
if (random != false) {
var coinFace = Math.floor(Math.random() * 2);
if (coinFace === 0) {
var h1 = document.getElementById("h2").innerHTML = ("Heads!");
} else {
var h1 = document.getElementById("h2").innerHTML = ("Tails!");
}
}
random = true;
}
&#13;
<button id="riggedCoin" onclick="riggedCoinFlip()">Rigged Coin</button>
<h1 id="h2"> Coin Flip </h1>
&#13;