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

if (timer !== null) clearInterval(timer), value = 0;

如果计时器不为空(它正在运行)-> 清除间隔,将变量设置为 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 回答