📄 com.js
字号:
{
if(urld.length<=1) return;
if(rndX)
{
if(rnd.length==0 && loopx!=0)
newrnd(0);
playrnd();
}
else
{
if(lpdd<urld.length-1)
{
openfile(lpdd+1);
return;
}
if(loopx!=0)
openfile(0);
}
}
////////////////////////--- 播放控件 事件驱动 ---///////////////////////////////
function mdip_tt(f)
{
if(oop==null) { mediaPlayerObj.controls.stop(); return;}
if(oop.constructor != mediaClass) { mediaPlayerObj.controls.stop(); return;}
var fs = Word.bmedst;
if(f<0 || f>=fs.length) return;
rtxt1.innerText = fs[f];
if(f == 8)
medTT = setTimeout("gonext();",500);
}
function reap_tt(f)
{
if(oop==null) { realPlayerObj.DoStop(); return;}
if(oop.constructor != realClass) { realPlayerObj.DoStop(); return;}
if(f!="")
rtxt1.innerText = f.slice(0,4);
}
function miderror()
{
if(oop==null) return;
if(oop.constructor != mediaClass) return;
errorreplay();
}
function reaerror()
{
if(oop==null) return;
if(oop.constructor != realClass) return;
errorreplay();
}
function imgerror()
{
if(oop==null) return;
if(oop.constructor != imgClass) return;
errorreplay();
}
////////////////////////--- 定时提示控制 ---///////////////////////////////
function dsts(t)
{
clearTimeout(alTXT);
Jts1.innerText = t || Word.dqwfz;
Jts1.style.display = "block";
Jts2.style.display = "none";
alTXT = setTimeout('Jts2.style.display="block";Jts1.style.display="none";',1000);
}
///////////////////////////--- 选段播放 ---////////////////////////////////
function xdbfsz()
{
if(oop==null) { dsts(); return; }
xdbj=(xdbj+1)%3;
xdbfszxx();
switch(xdbj)
{
case 0:
jdhkl.style.backgroundPositionX = "9999";
jdhk.style.backgroundPositionX = "9999";
break;
case 1:
xxL = oop.pos();
xxR = oop.length()-oop.setss*2;
xdbjsz();
break;
case 2:
xxR = oop.pos();
if(xxL>=xxR)
{
var zz = xxL;
xxL = xxR;
xxR = zz;
}
xdbjsz();
break;
}
}
function xdbfszxx()
{
eval("IM_xd.src=bb_xd"+xdbj+".src");
IM_xd.alt = Word.xdts[xdbj];
}
function xdbjsz()
{
var m = oop.length() || 1;
jdhkl.style.backgroundPositionX = Math.round(xxL/m*100)+"%";
jdhk.style.backgroundPositionX = Math.round(xxR/m*100)+"%";
}
////////////////////////--- 歌词处理 类 ---///////////////////////////////
function lrcClass(tt)
{
this.txt = [];
this.index = [];
this.dts = -1;
this.dte = -1;
if(/\[offset\:(\-?\d+)\]/i.test(tt))
this.oTime = RegExp.$1/1000;
else
this.oTime = 0;
tt = tt.replace(/\[\:\][^$\r\n]*(\r\n|$)/g,"$1");
tt = tt.replace(/(\r\n)?<[^>]+>/g,"");
this.txt = tt.split("\r\n");
var tloh = this.txt.length;
for(var ii=0; ii<tloh; ii++)
{
while(/\[[^\]]+\:[^\]]+\]/.test(this.txt[ii]))
{
this.txt[ii] = this.txt[ii].replace(/\[([^\]]+)\:([^\]]+)\]/,"");
var tse = parseInt(RegExp.$1) * 60 + parseFloat(RegExp.$2);
if(tse==tse)
this.index[this.index.length] = { t:tse-this.oTime , n:ii };
}
this.txt[ii] = this.txt[ii].replace(/^ +/,"").replace(/ +$/,"")
}
this.index = this.index.sort( function(a,b){return a.t-b.t;} );
this.run = function(tme)
{
if(tme>=this.dts && tme<this.dte) return;
var ii;
for(ii=this.index.length-1; this.index[ii].t>tme && ii>0; ii--){}
this.print(this.txt[this.index[ii].n]);
this.dts = this.index[ii].t;
this.dte = (ii<this.index.length-1)?this.index[ii+1].t:99999;
}
this.print = function(txt)
{
lrcbox.innerText = txt;
}
this.print("");
}
////////////////////////--- 打开歌曲选择窗口 ---///////////////////////////////
function openlw()
{
try {
sewin.focus();
} catch(hh)
{
sewin = window.open("player_select.htm","","width=370,height=414");
}
}
function closelw()
{
try {
sewin.close();
} catch(hh){}
}
////////////////////////--- 加载播放器后是否播放 ---///////////////////////////////
var lsTE = [];
var stTE=0, enTE=-1;
var stTEr=-1;
function TYPE()
{
}
function DATA(tn,tu,to,tm,tc)
{
to = to || 0;
tm = tm || "";
tc = tc || 0;
lsTE[lsTE.length] = { n:tn, u:tu, o:to, m:tm, c:tc };
}
var data = DATA;
function START()
{
stTE = lsTE.length;
}
function END()
{
enTE = lsTE.length;
}
function RND_START()
{
if(dataRND) return;
stTEr = lsTE.length;
}
function RND_END()
{
if(stTEr==-1 || dataRND) return;
var enTEr = lsTE.length;
if(stTEr>=enTEr) return;
var stoe = enTEr-stTEr;
var sle = stoe*3;
for(var ii=0; ii<sle; ii++)
{
var ra = Math.floor(Math.random()*stoe)+stTEr;
var rb = Math.floor(Math.random()*stoe)+stTEr;
var zz = lsTE[ra];
lsTE[ra] = lsTE[rb];
lsTE[rb] = zz;
}
}
function DataLoadEnd(sot)
{
newlist(true);
if(dataRND)
{
var gs = [];
if(RNDano>lsTE.length)
RNDano = lsTE.length;
for(var ii=0; ii<lsTE.length; ii++)
gs[ii] = ii;
for(var ii=1; ii<=RNDano; ii++)
{
var k = Math.floor(Math.random()*gs.length);
kaddlist(lsTE[gs[k]]);
gs = gs.slice(0,k).concat(gs.slice(k+1));
}
}
else
for(var ii=stTE; ii<enTE; ii++)
kaddlist(lsTE[ii]);
lsTE = null;
playlist(sot);
}
function kaddlist(t)
{
addlist(t.n,t.u,t.o,t.m,t.c);
}
function loadDataFile()
{
if(openRND)
rndkk();
if(openPLAY==1)
setTimeout("DataLoadEnd(true)",500);
else
{
var ttr = false;
if(openPLAY==2)
ttr = confirm(Word.sfbf);
DataLoadEnd(ttr);
}
}
//////////////////////////////--- 用户列表 ---//////////////////////////
function loadUserList()
{
home.load("HH_UserList");
var sstt = home.getAttribute("list");
home.removeAttribute("list");
if(sstt==null) { dsts(Word.mqmlb); return; }
sstt = sstt.split("|;|");
newlist(true);
for(var ii=0; ii<sstt.length; ii++)
{
var ca = sstt[ii].split("|,|");
addlist(ca[0],ca[1],ca[2],ca[3],ca[4]);
}
playlist(true);
}
function saveUserList()
{
if(urld==null) { dsts(Word.mqmlb); return; }
if(!confirm(Word.usli1)) return;
var sstt = "";
for(var ii=0; ii<urld.length; ii++)
{
sstt += "|;|"+urld[ii].nn+"|,|"+gtpp(urld[ii].uu)+"|,|"+urld[ii].oo+"|,|"+urld[ii].mm+"|,|"+urld[ii].cc;
if(sstt.length>40000)
break;
}
home.setAttribute("list",sstt.slice(3));
home.save("HH_UserList");
home.removeAttribute("list");
}
////////////////////////////////////////////////////////////////////////////////////
var loadnno = 0;
window.onload = function()
{
window.onload = null;
onallload();
}
function onallload()
{
loadnno++;
if(loadnno<2) return;
clearTimeout(LOadSF);
if(AUTO_YC)
yenwin1();
loading.outerHTML = "";
apxt.style.visibility = "visible";
home.href=ftpp(eell)+Word.email;
ylhk.setposition(Math.round(PLAY_VOLUME/100*ylhk.mlength()));
loadDataFile();
}
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//////////////////////////--- 滑块 ---/////////////////////////////
function ylyydxx()
{
if(zslen==0) return;
var nx = jdhk.getposition();
var zzs = Math.round(zslen/jdhk.mlength()*nx);
oop.go(zzs);
}
////////////////////////
function ylyyd()
{
if(oop==null) return;
var nx = Math.floor(ylhk.getposition()/ylhk.mlength()*100);
oop.volume(nx);
}
////////////////////////--- 静音 ---///////////////////////////////
function jingbb()
{
mute=!mute;
eval("jingyin.src=bb_jy"+(mute?"1":"0")+".src");
if(oop!=null)
oop.mute(mute);
}
////////////////////////--- 循环 ---///////////////////////////////
function lomd()
{
loopx=(loopx+1)%3;
lomdxx();
}
function lomdxx()
{
eval("IM_xh.src=bb_lok"+loopx+".src");
IM_xh.alt = Word.xhts[loopx];
}
function rndkk()
{
rndX=!rndX;
rndkkxx();
}
function rndkkxx()
{
eval("IM_sj.src=bb_rnd"+(rndX?"1":"0")+".src");
IM_sj.alt = rndX?Word.sjts1:Word.sjts2;
}
////////////////////////--- 文件、列表功能菜单 ---///////////////////////////////
function selectmenu()
{
var d = menu.selectedIndex;
home.focus();
menu.selectedIndex = 0;
switch(d)
{
case 1: openadd_wim(); break;
case 2: listedit_wim(); break;
case 3: annedit_wim(); break;
case 4: qiqts(); break;
case 5: returnlist(); break;
case 6: loadUserList(); break;
case 7: saveUserList(); break;
case 8: window.location.reload(); break;
case 9: parent.document.getElementById("mainid").src=HOME_URL; break;
}
}
function clbfq()
{
window.location.replace("player/close.htm");
}
function playerclose()
{
if(confirm(Word.gbxw))
clbfq();
}
/////////////////////////--- 视频 ---//////////////////////////////
function spkg(zzs)
{
spzt = zzs
if(spzt)
{
sspx.style.display = "block";
vwingo(spscjl);
}
else
{
dttspg();
sspx.style.display = "none";
parent.tttz(TH);
}
}
function vwingo(vs)
{
if(gmgk)
{
gmgo=-888;
if(vs>0 && vs<VID_H1)
vs = VID_H1;
}
spscjl = vs;
dttspg();
if(vs>0)
{
parent.tttz(vs+TH+TVBH);
vowinh.height = vs;
vowin.width = Math.round(vs*VID_HW);
}
else
{
parent.tttz(-1);
qptz();
document.body.onresize = qptz;
}
}
function spzydjaa()
{
if(spscjl>0)
spzydjkk(!zytlzt);
else
dsts(Word.qpsfts);
}
function spzydjkk(s)
{
zytlzt = s;
if(zytlzt)
{
winsq.src = bb_ss1.src;
parent.lpo(false);
document.body.onresize = zytltz;
}
else
{
winsq.src = bb_ss0.src;
parent.lpo(true);
document.body.onresize = null;
}
}
function dttspg()
{
if(zytlzt)
spzydjkk(false);
else
document.body.onresize = null;
}
function qptz()
{
try {
vowinh.height = document.body.clientHeight-TH-TVBH;
vowin.width = document.body.clientWidth-TVBW;
} catch(hh){}
}
function zytltz()
{
gmgo=-888;
var eh = gmgk?VID_H1:VID_H0;
if(document.body.clientHeight<eh+TH+TVBH)
parent.tttz(eh+TH+TVBH);
var hh = document.body.clientHeight-TH-TVBH;
spscjl = hh;
try {
vowinh.height = hh;
vowin.width = Math.round(hh*VID_HW);
} catch(hh){}
sptzjxg(hh);
}
//////////////////////--- 视频拖拽历史记录 ---///////////////////////////////////
function sptzjxg(h)
{
if(h==sptzjl[0]) return;
sptzjl = [].concat(h,sptzjl.slice(0,4));
cklslist.options.length = sptzjl.length+1;
for(var ii=1; ii<=sptzjl.length; ii++)
cklslist.options[ii].text = Word.ckcc+ii+":("+sptzjl[ii-1]+")";
}
function selectspls()
{
var d = cklslist.selectedIndex-1;
home.focus();
cklslist.selectedIndex = 0;
if(d<0) return;
vwingo(sptzjl[d]);
}
//////////////////////--- 隐藏播放器 ---/////////////////////////////
function yenwin1()
{
dttspg();
sspx.style.display = "none";
parent.tttz(8);
yytct.style.display = "block";
}
function yenwin2()
{
yytct.style.display = "none";
spkg(spzt);
}
//////////////////////--- 功能面板 ---/////////////////////////////
function opengml(kurl)
{
var kkgmgo = (!spzt)?-99:spscjl;
if(!spzt)
{
spscjl=VID_H1;
spkg(true);
}
gmlyc2();
gmgo = kkgmgo;
gmtext.innerText = "";
gmmb.style.display = "block";
gmifbox.style.display = "none";
gmloading.style.display = "block";
gmsoll.start();
gmiframe.location.href = kurl;
}
function gmloadend()
{
gmsoll.stop();
gmifbox.style.display = "block";
gmloading.style.display = "none";
}
function closegml()
{
gmgk=false;
gmmb.style.display = "none";
gmiframe.location.href = "about:blank";
if(gmgo==-99)
spkg(false);
else if(gmgo>0 && gmgo<VID_H1)
vwingo(gmgo);
}
function gmlyc1()
{
gmgk=false;
gmbox.style.display = "none";
gmyin.style.display = "block";
}
function gmlyc2()
{
gmgk=true;
if(spscjl>0 && spscjl<VID_H1)
vwingo(VID_H1);
gmbox.style.display = "block";
gmyin.style.display = "none";
}
////////////////////////////////////////////////////////////////////
function kdilrcp(tf)
{
if(!t_lrc) return;
lrcmmm.style.display = tf?"block":"none";
pplk.style.display = tf?"none":"block";
}
function loadlrc(url)
{
try {
eval('idDownload.startDownload(url,function(txt){if(urld[lpdd].mm=="'+url+'") lrcrun(txt)})');
} catch(hh){
dsts(Word.nolrc);
}
}
function lrcrun(m)
{
lrcobj = new lrcClass(m);
t_lrc=true;
kdilrcp(true);
}
/////////////////////////////////////////////////////////////////////
function zzend()
{
if(VIDEO_IN_UP)
zppbt.parentElement.insertBefore(zppbt);
gmsoll.stop();
writeannou();
jdhk.style.behavior = "url(player/js/soll.htc)";
ylhk.style.behavior = "url(player/js/soll.htc)";
htmlTXT(xmlDoc,0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -