1

サイコロ ゲームの math.random イメージの呼び出しに若干の問題があります。ロールボタンをクリックしても画像が変わりません。.html ファイルがある場所に画像を保存しました。どんな助けでも大歓迎です!

サイコロを転がす

<script type="text/javascript">
    var dieImage;

    function start()
    {
        var button = document.getElementById(rollButton);
        button.addEventListener("click", rollDice, false);
        dieImage = document.getElementById("die1");
    }

    function rollDice()
    {
    setImage(dieImage);
    }

    function setImage(dieImg)
    {
    var dieValue = Math.floor(1 + Math.random() * 6);
    dieImg.setAttribute("src", "die" + dieValue + ".jpg");
    dieImg.setAttribute("alt", "dieImg with" + dieValue + "spots");

    if (dieValue == 6)
        {
        document.getElementById("sometext").innerHTML = "You Win!";
        }
    else
        {
        document.getElementById("sometext").innerHTML = "Roll Again";
        }

    }

    window.addEventListener("load", start, false);
</script>
</head>
<body>
    <form action = "#">
        <input id = "rollButton" type = "button" value = "Roll Dice">
    </form>
    <li>
        <img id = "die1" src = "die1.jpg" alt = "blankImage">
    </li>
    <div id = "sometext">Roll for a 6!</div>
</body>

4

1 に答える 1

3

上記のコードの唯一の問題は、次の行です。

var button = document.getElementById(rollButton);

読むべき

var button = document.getElementById("rollButton");

上記の変更により、関数が機能し、画像が更新されます。実際にすべての画像が適切な場所にあると仮定すると、画像が変化することがわかります。

励ましのメモとして、Firefox でコーディングし、Firebug を入手することをお勧めします。これらのツールを使用すると、Firebug コンソールや Firefox の Web 開発者エラー コンソールを利用できます。これらは、このような問題の迅速なトラブルシューティングに非常に役立ちます。

于 2012-05-05T13:12:26.033 に答える