我正在研究一個涉及倒數計時器的兒童遊戲。如果用戶在計時器用完之前匹配所有元素,則顯示「You Won!」彈出窗口。如果它們在定時器命中零之前不匹配所有元素,則會顯示「Sorry,You Lost」彈出窗口。如果用戶贏得遊戲,停止倒數計時器
我遇到的問題是在用戶贏得遊戲和「你贏了!」之後時鐘不停止倒計時。彈出窗口出現,所以一旦定時器到達零,「Sorry,You Lost」彈出窗口仍會出現。
這裏是我的代碼:
$("#startClock").click(function(){
var timer;
var counter = 4;
var winner = 0;
var done = true;
$("#boat").draggable({
revert: "invalid", containment: "#wrapper",
start: function(event, ui){
if(!done) return false;
},
stop: function(event, ui){
if($(".correct").length == $(".drop").length){
setTimeout(function(){
$("<div title='You did it!'>You won!</div>").dialog();
},500);
var winner = 1;
}
}
});
if(!timer){
timer = setInterval(function() {
counter--;
if (counter >= 0) {
span = document.getElementById("count");
span.innerHTML = counter;
}
if (counter === 0 && winner === 0) {
$("<div title='Game Over'>Sorry, game over!</div>").dialog();
clearInterval(counter);
}
}, 1000);
}
});
View my demo game here.(點擊右上角的「啓動時鐘」)任何幫助表示讚賞。謝謝!
勞倫
也許......否則,如果 – Dan