簡體   English   中英

每次單擊按鈕時如何調用該函數?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM