0

我有一些 Javascript 代码可以在 a 上绘制一堆星星<canvas>并使它们也闪烁,但是我的代码根本不起作用。

所发生的情况是所有星星刚开始时都是完全不透明的(除了一些淡入然后保持完全不透明的星星)。我不知道为什么不透明度没有降低,因为我以为我已经在课堂上的incrementOpcity()方法中编程了Star

我试图用一个对象来代表一颗星星,但我不确定我是否正确地实现了它。我也不知道我是否使用<canvas>错误的上下文。

谁能告诉我确切的问题是什么?

代码可以在这里找到

4

2 回答 2

3

主要问题是您在彼此之间绘制不同不透明度的盒子,而没有删除旧盒子。结果,您最终看起来就像一个奇异的白盒子,显示..

你还有两个我修复的错误。

你可以在这里看到我的改变:http: //tinkerbin.com/ZfAxYXVs

于 2013-02-06T06:04:41.967 回答
1

这是一个更新的

主要问题:

  1. 您需要清除画布并每帧重绘黑色背景。

  2. 您正在访问 中的opacity变量fillStyle,它应该在的位置this.opacity

  3. 您的边界检查不太有效。

于 2013-02-06T06:23:26.497 回答