[英]How to call the function every time I click the button?
每次单击按钮时,如何随机分配一个新数字? 它可以工作一次,但是当我再次单击时,它是相同的数字。 我该如何解决?
HTML:
<div id="center">
<h1>Dragon</h1>
<div id="dragonRedHpBar">
<div id="dragonGreenHpBar"></div>
</div>
<span id="hpLeft1"></span>
<p>The Dragon hit you for: <span id="DragonHit"></span></p>
<p>You hit a: <span id="MyHit"></span></p>
<h1>Player</h1>
<div id="myRedHpBar">
<div id="myGreenHpBar"></div>
</div>
<span id="hpLeft2"></span><br />
<button id="button" onclick="play()">Fight!</button>
</div> <!-- End of div #center-->
使用Javascript:
window.onload = function() {
document.getElementById("hpLeft1").innerHTML= "<b>200/200</b>";
document.getElementById("hpLeft2").innerHTML = "<b>200/200</b>";
};
var myHit = Math.floor(Math.random() * 40 + 1);
var dragonHit = Math.floor(Math.random() * 40 + 1);
var playerHitpoints, dragonHitpoints = 200;
var slaying = true;
这是我要调用的函数:
function play() {
document.getElementById("DragonHit").innerHTML = dragonHit;
document.getElementById("MyHit").innerHTML = myHit;
}
您需要在play()函数中再次调用random函数。 当前,您已对其进行设置,使其仅在声明myHit和dragonHit变量时运行一次。
function play() {
myHit = Math.floor(Math.random() * 40 + 1);
dragonHit = Math.floor(Math.random() * 40 + 1);
document.getElementById("DragonHit").innerHTML = dragonHit;
document.getElementById("MyHit").innerHTML = myHit;
}
在play()
函数中创建随机值。 您只创建了它们一次,因此它们显然将保持不变。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.