audio标签用于播放音频文件,很不幸,歌词文件并没有相应接口
addTextTrack() 向音频添加新的文本轨道。//各大浏览器都没有支持
有两种方法可以实现歌词同步:
1. 使用setInterval();
2. 监听timeupdate
两种方法,个人觉得都不是很完美,暂时找不到更好的方法
function media(dom,src){
this.dom = dom;
this.src = src;
this.audio = this.dom.getElementsByTagName('audio')[0];
this.control = $(this.dom).find(".control")[0];
this.lyrbox = $(this.dom).find(".lyrics")[0];
this.timer = this.dom.getElementsByTagName('span')[0];
this.timepoint = $(this.dom).find(".time-point")[0];
this.timebardiv = $(this.dom).find('.time-bar div')[0];
this.formatlyr = [];
this.intval = null;
this.init();
formattime = function(t){
var min = parseInt(t/60);
var ss = parseInt(t)%60 ;
ss = ss>9?ss:"0"+ss;
return min+":"+ss;
}
}
media.prototype.init = function() {
var self = this;
self.dom.style["background"] = "url("+self.src.img+") no-repeat";
self.dom.style["background-size"] = "100% 100%"