Javascript:暂停/取消暂停Javascript俄罗斯方块游戏
我最近开始使用javascript俄罗斯方块模板,我一直在尝试实现暂停功能。我正在尝试创建一个window.onkeydown函数,这样当点击一个按钮时,游戏将暂停,并切换到再次点击后继续 下面是我的代码片段Javascript:暂停/取消暂停Javascript俄罗斯方块游戏,javascript,html,function,Javascript,Html,Function,我最近开始使用javascript俄罗斯方块模板,我一直在尝试实现暂停功能。我正在尝试创建一个window.onkeydown函数,这样当点击一个按钮时,游戏将暂停,并切换到再次点击后继续 下面是我的代码片段 function get(id) { return document.getElementById(id); }; function hide(id) { get(id).style.visibility = 'hidden'; }; function show(id)
function get(id) {
return document.getElementById(id);
};
function hide(id) {
get(id).style.visibility = 'hidden';
};
function show(id) {
get(id).style.visibility = null;
};
function html(id, html) {
get(id).innerHTML = html;
};
function timestamp() {
return new Date().getTime();
};
function random(min, max) {
return (min + (Math.random() * (max - min)));
};
function randomChoice(choices) {
return choices[Math.round(random(0, choices.length - 1))];
};
if (!window.requestAnimationFrame) { // http://paulirish.com/2011/requestanimationframe-for-smart-animating/
window.requestAnimationFrame = window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.oRequestAnimationFrame ||
window.msRequestAnimationFrame ||
function (callback, element) {
window.setTimeout(callback, 1000 / 60);
}
}
var isPaused = true;
window.requestAnimFrame = (function () {
return window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
function (callback) {
window.setTimeout(callback, 1000 / 60);
};
})();
function Start() {
if (isPaused) {
Update();
}
requestAnimFrame(Start);
}
window.onkeydown = function () {
isPaused = !isPaused; // flips the pause state
};
有人能给我指出正确的方向吗?您必须在设置超时上保留一个参考。像
module.timeout = setTimeout(callback, 1000/60);
因此,当您翻转iPaused时,请清除这两个超时,并在稍后暂停时重新启动它们
clearTimeout(module.timeout)
为什么有两个请求动画帧的实现?暂停Javascript执行直到按下按钮:谢谢,我尝试了一下,但仍然遇到问题。我错过了什么明显的东西吗?我的代码在这里我得到一个“找不到那个代码段”。这是存储库。