document.body.onclick=function(){ //点击播放器外面的事物时关闭抽屉
document.querySelector("#playlist").classList.add("yhidden");
document.getElementById('bgmplayer').classList.remove("bgmon");
};
document.getElementById('bgmplayer').onclick=function(){ //避免事件被覆盖
event.stopPropagation();
};
function playlist(){//歌曲列表具现化
var element = document.getElementById('playlist');
element.innerHTML='';
if(musicApi.length>0&&musicArr.length==0){
var ydapi=musicApi[0];//console.info(musicApi[0]);
fetch(ydapi.api+'?server='+ydapi.type+'&type=playlist&id='+ydapi.id+'&auth='+ydapi.auth).then(response => response.json()).then(data=>{
if(musicArr.length==0){
musicArr=data;
if(ydapi.sj=='1'){a=parseInt(Math.random()*musicArr.length);}
sj=musicArr[a];
//console.info(musicArr[0].mp3);
yaudio.src=sj.mp3;
yaudio.ti=sj.title;
yaudio.art=sj.artist;
yaudio.fm=sj.cover;
}
for (var i = 0; i < musicArr.length; i++){
var item = musicArr[i];var anum = i+1;
if(anum<10){anum='0'+anum;}
var geshou="";
if(item.artist){
geshou= ' - '+item.artist+'';
}
element.innerHTML=element.innerHTML+'
'+anum+'.'+item.title+''+geshou+'';
if (item.mp3 == "") {
document.querySelectorAll("#playlist li")[i].style.color='#ddd';
}
}
var playlistli=document.querySelectorAll("#playlist li");
playlistli.forEach((value, index) => {
playlistli[index].classList.remove("yd-playing");
playlistli[index].onclick=function(){
next(index);//使用next函数进行点播
};
});
playlistli[a].classList.add("yd-playing");
var ody=document.getElementById('ydmc');
var geshou='';
if (yaudio.paused) {var autopause=0;
ody.innerHTML= '';
document.getElementById("ydfm").classList.add("paused");
} else {var autopause=1;
ody.innerHTML = '';
document.getElementById("ydfm").classList.remove("paused");
}
if(yaudio.art.length>0){geshou=' - '+yaudio.art;}
document.getElementById('ydtitle').innerHTML = yaudio.ti+geshou;
document.getElementById("ydfm").src=yaudio.fm;
var setProgress = function(value){
var currentSec = parseInt(value%60) < 10 ? '0' + parseInt(value%60) : parseInt(value%60),
ratio = value / yaudio.duration * 100;
document.getElementById('jindu').style.width=ratio+'%';
document.getElementById('ytime').innerHTML = (parseInt(value/60)+':'+currentSec);
}
var updateProgress = function(){
setProgress(yaudio.currentTime);
}
timeout = setInterval(updateProgress, 300);
});
}else{
for (var i = 0; i < musicArr.length; i++){
var item = musicArr[i];var anum = i+1;
if(anum<10){anum='0'+anum;}
var geshou="";
if(item.artist){
geshou= ' - '+item.artist+'';
}
element.innerHTML=element.innerHTML+''+anum+'.'+item.title+''+geshou+'';
if (item.mp3 == "") {
document.querySelectorAll("#playlist li")[i].style.color='#ddd';
}
}
var playlistli=document.querySelectorAll("#playlist li");
playlistli.forEach((value, index) => {
playlistli[index].classList.remove("yd-playing");
playlistli[index].onclick=function(){
next(index);//使用next函数进行点播
};
});
playlistli[a].classList.add("yd-playing");
yoduplayer();
}}
function yoduplayer(){//初始化音乐播放器
var ody=document.getElementById('ydmc');
var geshou='';
if (yaudio.paused) {var autopause=0;
ody.innerHTML= '';
document.getElementById("ydfm").classList.add("paused");
} else {var autopause=1;
ody.innerHTML = '';
document.getElementById("ydfm").classList.remove("paused");
}
if(yaudio.art.length>0){geshou=' - '+yaudio.art;}
document.getElementById('ydtitle').innerHTML = yaudio.ti+geshou;
document.getElementById("ydfm").src=yaudio.fm;
var setProgress = function(value){
var currentSec = parseInt(value%60) < 10 ? '0' + parseInt(value%60) : parseInt(value%60),
ratio = value / yaudio.duration * 100;
document.getElementById('jindu').style.width=ratio+'%';
document.getElementById('ytime').innerHTML = (parseInt(value/60)+':'+currentSec);
}
var updateProgress = function(){
setProgress(yaudio.currentTime);
}
timeout = setInterval(updateProgress, 300);
}
playlist();