0

JSFiddle: JSフィドル

HTML:

<div id="content">
    <input type=button value="Start Game" id=sGame class=sGame />
    Timer: <input type=text class=timer id=timer value="" READONLY />

    <br><br>
    <div id="cardPile"> </div>
    <div id="cardSlots"> </div>
    <div id="successMessage">
        <h2>You did it in <span class="time"></span> seconds!</h2>
        <button onclick="init()">Play Again</button>
    </div>
</div>

私が抱えている問題は、PLAY AGAINボタンをクリックすると、タイマーが0から再起動しないことです。次のコードを試しました

$('#sGame').click();

内部

init();

機能ですが、[ゲームの開始] ボタンをクリックする前でもタイマーが開始されます。

4

1 に答える 1

1

(タイマー !== null) clearInterval (タイマー) の場合、値 = 0;

タイマーが null でない場合 (実行中) -> 間隔をクリアし、変数を 0 に設定してから、間隔を再開します。

$('#sGame').click(function () {
    if (timer !== null) clearInterval(timer), value = 0;
    timer = setInterval(function () {
        value = value + 1;
        $("#timer").val(value);
    }, interval);
    $('#cardPile').show('slow');
    $('#cardSlots').show('slow');
});
于 2013-06-04T14:46:49.283 に答える