我有以下函数使用 JavaScript 将图像绘制到 HTML5 画布上:
function drawStartButton(){
image.onload = function(){
context.drawImage(image, 260.5, 60);
};
image.src = "StartButton.png";
var boundingBox = myGameCanvas.getBoundingClientRect();
boundingBox.onmousemove = function(e){
var mouseX = e.pageX - this.offsetLeft;
var mouseY = e.pageY - this.offsetTop;
var pixels = context.getImageData(mouseX, mouseY, 1, 1);
}
}
该图像将用作按钮,单击时将调用另一个函数。单击按钮时我要调用的函数是:
function drawLevelOneElements(){
image.onload = function(){
context.drawImage(image, 50, 30, 20, 20);
};
image.src = "1.png";
}
我在画布上添加了一个事件监听器,它监听按钮的点击,并在点击发生时调用该函数。这目前可以正常工作,但是,虽然drawLevelOneElements()
调用了函数,并绘制到画布上,调用绘制的图像drawStartButton()
也仍然显示在画布上,所以我将两个函数的内容同时显示在画布上.
我想要发生的是,当单击按钮时,按钮然后消失,并且绘制的元素drawLevelOneElements
是画布上显示的内容,而开始按钮不再存在。
有人能告诉我在画布上绘制后如何清除drawStartButton()
画布上绘制的图像吗?