html5音乐播放器视频教程,HTML5音乐播放器

歌词滚动时间校对问题

歌词滚动的实现我采用hash表存储时间轴和歌词,将歌词文本反序列化成如下格式

var lry = {

'00:00':{

index:0,

lyric:'不相信会绝望'

}

};

$audio.on('timeupdate', function () {

if (_audio_duration > 0) {

$('.cur').width(_audio.currentTime * 100 / _audio_duration + '%');

var curTime = timeDispose(_audio.currentTime);

//限定1s刷新一次

if (player.curTime !== curTime) {

var lrc = player.data[player.curIedex].lyric;

if (lrc[curTime]) {

player._$lyric_wrap.find('.on').removeClass('on');

var p = player._$lyric_wrap.find("p:nth-child(" + (lrc[curTime].index + 1) + ")");

p.addClass("on");

player._$lyric_wrap.css({

"transform": "translate(0,-" + lrc[curTime].index * player.lyricLineHeight + "px)",

"-ms-transform": "translate(0,-" + lrc[curTime].index * player.lyricLineHeight + "px)",

"-moz-transform": "translate(0,-" + lrc[curTime].index * player.lyricLineHeight + "px)",

"-webkit-transform": "translate(0,-" + lrc[curTime].index * player.lyricLineHeight + "px)",

"-o-transform": "translate(0,-" + lrc[curTime].index * player.lyricLineHeight + "px)"

});

}

player.curTime = curTime;

$('.curTime').html(curTime);

}

}

});

监听播放器的timeupdate事件,在歌词对象用当前播放时间轴位置查找对应歌词以及歌词的。但是会出现错位的bug,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值