我正在尝试使用HTML canvas元素为我的子手游戏创建“ hang子手”显示。我让the子手一次显示一个步骤,但是我似乎无法清除画布(原本希望它是更简单的步骤...)。当我添加clearRect调用时,它将导致我的整个页面出错。无法启动游戏等-即使我仅在游戏结束时才调用它...
任何建议将不胜感激-网络世界的新手,所以假设我在做些愚蠢的事情:)
请参阅以下代码笔以获取源文件和问题的显示:
https://codepen.io/enewmanMN/pen/LYPWpQq
尝试移动clearRect调用以避免立即调用它,以查看我是否甚至可以在代码路径中以它开始游戏,但没有运气。
https://codepen.io/enewmanMN/pen/LYPWpQq
function clearCanvas () {
myStickman = document.getElementById("stickman");
context = myStickman.getContext('2d');
context.clearRect(0, 0, canvas.width, canvas.height); //CAUSING FAULTS
context.beginPath();
context.strokeStyle = "#fff";
context.lineWidth = 2;
}
希望它清除画布元素“ stickman”,但会释放页面功能。
最佳答案
当我在未注释clearRect的情况下运行您的代码时,出现一个错误,提示未定义canvas。您将画布命名为myStickman
。这解决了
context.clearRect(0, 0, myStickman.width, myStickman.height);
关于javascript - 关于在代码路径中引用clearRect为什么会导致页面错误的任何信息?码本供引用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57642043/