0

我有一张汽车图像,我需要借助画布对它的轮胎和眼镜进行闪烁效果。

为此,我使用了画布绘制图像功能,它工作正常,但问题是当我悬停在轮胎标签上时,轮胎应该闪烁,而当我悬停在玻璃标签上时,眼镜应该闪烁,但它只发生一次。

就像我首先将鼠标悬停在轮胎选项卡上然后它使用闪烁功能闪烁但是当我鼠标悬停并悬停在玻璃选项卡上时也会闪烁效果但在轮胎上(在第一个悬停选项卡上)而不是在眼镜上,因为在我的代码中它会绘制一次图像直到两者都有不同的功能。

我在网上搜索了很多答案,但无法实现。我已经使用了 clearRect 函数,但我认为我的第一张图片并没有被删除。

我正在使用以下代码创建图像:

context.clearRect(0, 0, canvas.width, canvas.height);                   
context.save();
context.drawImage(mask, 0, 0); //mask
context.fillStyle= ""; //fill color style
context.fillStyle= "#6600ee"; //fill color style
context.fillRect(0, 0, canvas.width, canvas.height);
context.globalCompositeOperation = "destination-atop";
context.drawImage(shadow, 0, 0); //shadow
context.drawImage(glossreflection, 0, 0); //reflection                  
context.restore();

并尝试在鼠标移出时删除:

context.clearRect(0, 0, canvas.width, canvas.height);

我还发出警报,一切都在工作,但我不了解这个问题。

4

0 回答 0