以下是相关链接:http://jsbin.com/cebisoqovo/edit?html,output
我刚开始进行代码学习,最近用我有限的知识创建了一个名为 Reaction Tester 的游戏。但是,我最后面临一个小问题。
问题:
因此,只要显示随机的方形或圆形,您只需点击并点击&该点将显示在右侧。但是,我不知道如何设置游戏的结束时间,它只是不断弹出形状。我再次尝试并将结果(在css下)设置为display:none,以便仅在游戏结束时弹出这些。但是,我不知道如何结束它。请帮忙!谢谢!
p / s:这里直接插入代码有问题。如果您没问题,请转到jsbin链接并复制代码并粘贴到您的相应应用程序上以便更好地查看它,因为jsbin并没有真正清楚地显示它。很抱歉给您带来不便。
答案 0 :(得分:0)
创建一个名为gameRunning的全局变量,将其设置为true。创建一个30秒的超时函数,将gameRunning设置为false。在创建形状的函数中,首先检查gameRunning是否为true。如果gameRunning为true,则正常创建形状。如果gameRunning为false,则不执行任何操作。
^上述解决方案有效,但由于创建方框,您将获得游戏结束后创建的最后一个方框。
https://jsfiddle.net/vmo5x2vz/3/
使用它一段时间后,我找到了一种不同的更好的方法来满足你的特殊情况。
我创建了一个名为makeBoxTO的全局变量,' TO'意思是超时。
var makeBoxTO;
然后我将makeBox()中找到的超时分配给此makeBoxTO变量。这样我们就可以在makeBox()函数之外引用该超时。
makeBoxTO = setTimeout(function()...
然后我设置一个10秒计时器来结束游戏。
setTimeout(function(){
clearTimeout(makeBoxTO);
document.getElementById("Box").style.display = "none";
alert('game over');
},10000);
它会清除我们的makeBox超时,隐藏屏幕上的任何方框,并让用户知道游戏结束。