因此,在我正在制作的游戏中,有一个重新启动按钮,可以重新洗牌,然后将东西重新开始。卡片重新洗牌并更换,但之后没有可点击的卡片。在单击时添加类cardClicked,并在超时功能选择两个后删除。另外(不要把它打开),但是关于如何在启动和重启时启动和重置计时器的任何好主意?感谢。
var cardsArray = [];
$('.cardClicked').removeClass("cardClicked");
var moves = [];
$('.movesBlock').html('<p class="movesText">' + 'Moves: ' + moves.length + '</p>');
$('.rating').html('Rating:' + starItem + starItem + starItem);
for (i = 0; i < items.length; i++) {
$('<div class="card"/>').html('<span class="cardText">' + items[i] + '</span>').appendTo('.board');
};
items = shuffle(items);
答案 0 :(得分:1)
因为在.restart
点击后,您要删除DOM中的.card
,$('.card').click()
点击后.restart
无法正常工作...
因此,您需要在.card
点击
$(document).on('click','.card',function(){
//do stuff here
}
你也在代码中写过$('.card').click()
两次......不需要它。结合两者。
答案 1 :(得分:1)
您需要创建一个功能来管理定时器功能
之外的定时器var timer;
function resetTimer() {
clearInterval(timer);
var mins = 0;
var secs = 0;
timer = window.setInterval(
function() {
secs = secs + 1;
if (secs == 59) {
mins = mins + 1;
secs = 0;
}
$('.countUp').html('<p>' + 'Timer: ' + mins + ':' + secs + '</p>');
}, 1000);
}
当您需要启动或重启计时器时,您只需要拨打电话resetTimer();