我的问题在于,我有一个记忆游戏...我在下面放置的这个功能是一个重置按钮,所以它清除了电路板,启动了一个新的电路板(每次为随机卡分配一些东西)并重置定时器。定时器仅在单击卡时运行,这就是我删除底部显示的原因。我有一个问题,每当我在重置按钮上多次点击,(整个游戏重置2次,或者只是点击几次重置按钮)游戏都会出现故障,落后并最终没有创造出一个伟大的游戏... < / p>
我添加了行wait();因为我不知道我在做什么......大声笑它在控制台中造成错误...说wait();不是一个定义的功能...但我的游戏开始正常工作!最终我需要找到一种方法来获得这个错误发生的性能,在没有错误的情况下发生。任何帮助将不胜感激...我将下面的CodePen与wait()相关联;除去。
let wait = 500;
let opened = [];
function resetTimer(timer) {
$(".restart").on("click", function() {
for (i = 0; i < sCards.length; i++) {
$(".card").remove();
}
opened = [];
init(); //recreates the cards
wait(); //shows an error in console, but makes game work correctly?
$(".timer").css("display", "none");
});
}
答案 0 :(得分:0)
我在玩你的Codepen之后发现的问题,
resetTimer()
此功能是不必要的,请将其保留为$(".restart").on("click", function() { ... })
。
从resetTimer(nowTime);
init()
游戏故障的原因是由于功能resetTimer()
在init()
中,你在for循环中执行了resetTimer(nowTime)
并使该函数执行了16次,因为有16个洗牌卡
提供了编辑的codepen示例。 Codepen