WEB开发网
开发学院图形图像Flash FLASH打造LRC歌词播放器 阅读

FLASH打造LRC歌词播放器

 2007-01-03 10:53:38 来源:WEB开发网   
核心提示: this["itembutton"+i].caption2=this["itembutton"+i].caption1}//随着歌曲的播放,重置歌词的内容.this["itembutton"+(temppos-startpoint

this["itembutton"+i].caption2=this["itembutton"+i].caption1

}//随着歌曲的播放,重置歌词的内容.

this["itembutton"+(temppos-startpoint)].gotoAndStop(2)//让播到的歌词高亮显示

this["itembutton"+(temppos-startpoint-1)].gotoAndStop(1);//让刚才高亮的歌词恢复原来的状态

函数主要部分是这样。

让MOVEUP函数在歌曲播放时不断执行,以同步显示歌词,加入:

this.onEnterFrame=function(){

moveUp()

}

如果大家按着笔者的教程来做,现在基本的效果应该出来了.先测试一下。

怎么让歌词平滑滚动呢?

在整个容器里,只显示了SHOWNUM行歌词,所以,不可能就是简单地让歌词在播放过程中一直地上升。

我们主要是让两句歌词之间能够缓慢地上升,而不是播到相应歌词才让歌词跳动.

以以下两句歌词为例:

[00:15.84]难过 是因为闷了很久

[00:21.18]是因为想了太多

在15秒84和21秒18之间,我们让列表框的所有项目匀速移动一个列表框项目的高度.这样,当时间无限接近21秒18的时候,列表框的所有项目移动的距离接近于一个列表框项目的高度.当时间到21秒18,ONENTERFRAME事件响应时,列表框的内容恰好要更改,因为高亮显示的歌词发生改变.更改是原列表框第一项去掉,其它项目相应地往上移动,最后追加后面还没显示的歌词的第一行.所以,假如列表框项目实际上不移动的话,就会给人一种刚好移动了也恰好是一个列表框项目高度.因此,此时让列表框的位置恢复到原来15秒84时的位置,就不会有跳动的感觉。

知道了这个原理以后,就开始写这段匀速移动的代码了。这是个初中的物理问题,解决起来应该不难。

上一页  4 5 6 7 8 9 10  下一页

Tags:FLASH 打造 LRC

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接