setBg:function(){ this.bg_1.y=this.bg_1.y-1//每帧下移一个单位 this.bg_2.y= this.bg_2.y-1 if(this.bg_1.y <= -this.bg_1.height){ this.bg_1.y = this.bg_2.y + this.bg_1.height } if(this.bg_2.y <= -this.bg_2.height){ this.bg_2.y = this.bg_1.y + this.bg_1.height } },这段代码是如何让图片交替的,详细解释
时间: 2024-03-30 18:33:13 浏览: 81
小学信息技术第三册 彩色世界1选修教案 苏科版.doc
这段代码是通过两张背景图片来实现背景滚动的效果,背景图片交替出现。具体解释如下:
首先,这段代码是一个函数 `setBg`,用于设置背景。在这个函数中,有两张背景图片,分别为 `bg_1` 和 `bg_2`。
接下来,每一帧都会让两张背景图片向下移动一个单位,即 `this.bg_1.y=this.bg_1.y-1` 和 `this.bg_2.y = this.bg_2.y-1`。
当 `bg_1` 的位置移动到超出了它的高度时(即 `this.bg_1.y <= -this.bg_1.height`),将 `bg_1` 的位置重置为 `bg_2` 的位置加上 `bg_1` 的高度,这样就可以保证 `bg_1` 在 `bg_2` 的下方,从而实现背景图片的交替出现,即 `this.bg_1.y = this.bg_2.y + this.bg_1.height`。
同样的,当 `bg_2` 的位置移动到超出了它的高度时(即 `this.bg_2.y <= -this.bg_2.height`),将 `bg_2` 的位置重置为 `bg_1` 的位置加上 `bg_1` 的高度,这样就可以保证 `bg_2` 在 `bg_1` 的下方,从而实现背景图片的交替出现,即 `this.bg_2.y = this.bg_1.y + this.bg_1.height`。
这样,每一帧都会让两张背景图片向下移动一个单位,并且在交替出现的过程中,始终保持背景图片的连续性,从而实现了背景滚动的效果。
阅读全文