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

FLASH打造LRC歌词播放器

 2007-01-03 10:53:38 来源:WEB开发网   
核心提示: if (!isNaN(timeValue[i])) {//读到数据类型为数字的时候ending = i;//表示到了时间的末端break;//退出循环}//第二次循环也可以从STARTING开始,不过一般来说,从STARTING开始,循环的次数要多一些,所以就从TIMEVALUE.LENG

if (!isNaN(timeValue[i])) {//读到数据类型为数字的时候

ending = i;//表示到了时间的末端

break;//退出循环

}//第二次循环也可以从STARTING开始,不过一般来说,从STARTING开始,循环的次数要多一些,所以就从TIMEVALUE.LENGTH-1开始往上循环.

}

}

下一步,让歌词随着歌曲的播放而进行高亮显示(其实就是让相应歌词的MC跳到第二帧)

根据TIMEVALUE数组的值来定位:

比如说:下面是一段歌词:

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

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

[00:24.91]是心理起了作用

在15秒84和21秒18之间,第一句歌词处于高亮状态

在21秒18和24秒91之间,第二句歌词处于高亮状态

据此定义一变量TEMPPOS定位歌词.

在MOVEUP函数里追加:

var pos=_parent.song.position//获得歌曲当前的位置

for (i=starting; i<=ending; i++) {//从歌词的时间信息项开始循环

if (i == ending || pos<=timeValue[i+1]*1000) {//当歌曲的时间处在两个相邻时间值之间或者播到末尾,简单地说就是歌词时间跟歌曲时间相对应的时候

temppos = i;//获得要高亮显示的歌词的位置

break;//并退出循环

}

}

预览图中,列表所显示的是高亮歌词及其上下4句歌词,这里涉及一个问题,就是该从哪句开始显示.为此定义一变量STARTPOINT,追加代码:

var shownum=9;//显示歌词的行数,为ITEMBUTTON实例数目.

var startpoint=temppos-Math.floor(shownum/2);//该数值使高亮歌词显示在列表框中间.

for(var i=0;i<=shownum-1;i++){

this["itembutton"+i].caption1=LyricsText[i+startpoint]

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

Tags:FLASH 打造 LRC

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