设为首页收藏本站订阅更新

无忧脚本

 找回密码
 加入无忧

QQ登录

只需一步,快速开始

查看: 3314|回复: 10

[原创] 封装的一个播放器 [复制链接]

Rank: 3Rank: 3

升级  50.67%

注册时间
2005-7-4
威望
65
阅读权限
30
积分
352
帖子
75
精华
0
UID
32227
状态
当前离线
发表于 2006-12-20 18:47:55 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
一键分享 一键分享
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
  5. <title>播放器</title>
  6. </head>
  7. <script language="javascript">
  8. //linfeng@gx165.com
  9. function classMedia(_mediaid,_showTextid,_objname)
  10. {
  11.         //外部属性=========================================================================
  12.         this.CYL=true;//连续播放标志
  13.         this.RDM=false;//无序播放(true为无序播放)
  14.         this.MASMODE=true;//主模式,当用弹出式窗口控制时是从模式
  15.         this.MSG="";                //消息
  16.         //-----初始化设置---------------------------------------------------------------------
  17.         var TimeOUT=20;       
  18.         var M_Stop=false;
  19.         var mediaObj=document.getElementById(_mediaid);
  20.         var showObj=document.getElementById(_showTextid);
  21.         var SoundID=0;       
  22.         var nextID=1;
  23.         var MusicLength=0;
  24.         var Music=new Array();
  25.         var ACT;
  26.         var sTime=TimeOUT;
  27.         var WinOPEN;
  28.         var revFlag=false;
  29.         function duiLei()
  30.         {
  31.                 var lgh=50 ;//队列长
  32.                 var sID=new Array();       
  33.                 var num=0;
  34.                 var topn;
  35.                 var lenght=0;
  36.                 this.isTop=true;
  37.                 for(var i=0;i<lgh;i++)
  38.                 {
  39.                         sID[i]=0;
  40.                 }
  41.                 this.input=function(x)
  42.                 {
  43.                         num++;
  44.                         lenght++;
  45.                         if(num>lgh-1)num=0;
  46.                         sID[num]=x;
  47.                         topn=num;
  48.                 }
  49.                 this.output=function()
  50.                 {
  51.                         if(lenght>0)
  52.                         {
  53.                                 lenght--;
  54.                                 num--;
  55.                         }
  56.                         this.isTop=false;
  57.                         if(num<0)num=lgh-1;
  58.                         return sID[num];
  59.                 }
  60.                 this.popID=function()
  61.                 {
  62.                         num++;
  63.                         lenght++;
  64.                         if(num>lgh-1)num=0;
  65.                         if(num==topn)this.isTop=true;
  66.                         return sID[num];
  67.                 }
  68.                 this.GetIsButtom=function()
  69.                 {
  70.                         return lenght==0;
  71.                 }
  72.         }
  73.         var His=new duiLei();
  74.         this.AddList=function(u,n,f)//add Music
  75.         {
  76.                         var tmp=(f==undefined)?"no":f;
  77.                         Music[Music.length]={url:u,name:n,file:tmp,id:MusicLength};
  78.                         MusicLength=Music.length;
  79.         }
  80.         function PlayID(c_id)
  81.         {
  82.                 mediaObj.controls.stop();
  83.                 mediaObj.URL=Music[c_id].url;
  84.                 mediaObj.controls.play();
  85.         }
  86.         function GetNextID(leg,RandomFlag,isMas)
  87.         {
  88.                 var temp;
  89.                 if(His.isTop)
  90.                 {
  91.                         if(isMas)
  92.                         {
  93.                                 if(RandomFlag)
  94.                                 {
  95.                                         temp=Math.round(Math.random()*(leg-1))
  96.                                 }
  97.                                 else
  98.                                 {
  99.                                         temp=(SoundID+1)%leg;
  100.                                 }
  101.                         }//--------
  102.                         else
  103.                         {
  104.                                 temp=GetMenuPlayNext(leg)
  105.                         }
  106.                         His.input(temp);
  107.                         return temp;
  108.                 }
  109.                 else
  110.                 {
  111.                         return His.popID();
  112.                 }
  113.         }
  114.         function GetMenuPlayNext(length)
  115.         {
  116.                 if(WinOPEN!=null && WinOPEN.open)
  117.                 {
  118.                                 return WinOPEN.GetNextSoundID();
  119.                 }
  120.                 else
  121.                 {
  122.                                 return (SoundID+1)%length;
  123.                 }
  124.         }
  125.         function testTimeOut(s)
  126.         {
  127.                 if(s)
  128.                 {
  129.                         TimeOUT--;
  130.                         if(TimeOUT==0)
  131.                         {
  132.                                 TimeOUT=sTime;
  133.                                 return true;
  134.                         }
  135.                         else
  136.                         {
  137.                                 return false;
  138.                         }
  139.                 }
  140.                 else
  141.                 {
  142.                         TimeOUT=sTime;
  143.                         return false;
  144.                 }
  145.         }
  146.         function MsgRefresh()//更新消息
  147.         {
  148.                 var staText;
  149.                 staText="当前\""+Music[SoundID].name+SoundID+"\"下一首\""+Music[nextID].name+nextID+"\"";
  150.                 staText="<font color=yellow size='2'>当前:</font><font color=#00ffff size='2'>"
  151.                 +mediaObj.status
  152.                 +"</font><font color=#ff0000 size='2'>--"
  153.                 +Music[SoundID].name+"--</font>&nbsp;&nbsp;&nbsp;&nbsp;<a href='#huangXiangBin' onclick='"+_objname+".NEXT()'><font color=#00ff00 size='2'>下一首--</font></a><font  color=#ff00ff size='2'>"
  154.                 +Music[nextID].name+"</font>&nbsp;&nbsp;";
  155.                 //showObj.innerHTML=staText;
  156.                 //////////////////////////////////////////////////////////////////////
  157.                 showObj.innerHTML=staText;
  158.                 ///////////////////////////////////////////////////////////////////////
  159.                 return staText;
  160.         }
  161.         this.RUN=function()
  162.         {
  163.                 if(MusicLength==0)return;
  164.                 if(!M_Stop && this.CYL)
  165.                 {
  166.                         if(mediaObj.playState==6 && testTimeOut(1))
  167.                         {
  168.                                 this.NEXT();
  169.                         }
  170.                         if(mediaObj.playState==10||mediaObj.playState==1)
  171.                         {
  172.                                 testTimeOut(0);
  173.                                 this.NEXT();
  174.                         }
  175.                 }
  176.                 this.MSG=MsgRefresh();
  177.         }
  178.         ACT=window.setInterval(_objname+".RUN();",3000);
  179. /////////////////////////////////////////////////////////////////////////////以下为程序接口
  180. //////////////////////////////////----------播放控制-------------------------
  181.         this.PLAY=function(s_id)//播放,如果无参数,即播放当前ID,有参数时,播放参数指定的ID
  182.         {
  183.                 if(mediaObj.URL=="")mediaObj.URL=Music[0].url;
  184.                 if(arguments.length>0)
  185.                 {       
  186.                         SoundID=s_id;
  187.                         PlayID(SoundID);
  188.                 }
  189.                 else
  190.                 {
  191.                         mediaObj.controls.play();
  192.                 }
  193.                 this.MSG=MsgRefresh();
  194.                 M_Stop=false;
  195.                 this.MASMODE=true;
  196.                 revFlag=false;
  197.         }
  198.         this.PAUSE=function()//暂停
  199.         {
  200.                 mediaObj.controls.pause();
  201.                 this.MSG=MsgRefresh();
  202.         }
  203.         this.REV= function(t)//播放上一首
  204.         {
  205.                 var idx=1;
  206.                
  207.                 if(arguments.length>0)idx=t;
  208.                 if(!revFlag)idx++;
  209.                 for(;idx>0;idx--)
  210.                 {
  211.                         if(His.GetIsButtom())return;//没有前一首了
  212.                         nextID=SoundID;                                        //当带有参数时,将播放向下播放第N首
  213.                         SoundID=His.output();
  214.                 }
  215.                 PlayID(SoundID);
  216.                 this.MSG=MsgRefresh();
  217.                 M_Stop=false;//停止标记
  218.                 revFlag=true;
  219.         }
  220.         this.NEXT=function(t)//播放下一首,当带有参数时,
  221.         {                                                //将播放向下播放第N首,但只能是历史播放才有些功能
  222.                 idx=1;
  223.                 if(arguments.length>0)idx=t;
  224.                 if(revFlag)idx++;
  225.                 for(;idx>0;idx--)
  226.                 {
  227.                         SoundID=nextID;
  228.                         nextID=GetNextID(MusicLength,this.RDM,this.MASMODE);
  229.                         if(His.isTop)break;
  230.                 }
  231.                 PlayID(SoundID);
  232.                 this.MSG=MsgRefresh();
  233.                 M_Stop=false;
  234.                 revFlag=false;
  235.         }
  236.         this.STOP=function()//停止播放
  237.         {
  238.                 M_Stop=true;
  239.                 mediaObj.controls.stop();
  240.         }
  241.         this.SETVOLUME=function(vol)//设置音量
  242.         {
  243.                 if(vol>100)vol=100;
  244.                 if(vol<0)vol=0;
  245.                 mediaObj.settings.volume=parseInt(vol);
  246.         }
  247.         //----------播放设置-------------------------
  248.         this.SETRDM=function()//设置无序或是有序播放,调用一次,改变一次状态
  249.         {
  250.                 this.RDM=this.RDM?false:true;
  251.         }
  252.         this.SETCYCLE=function()//设置是否进行循环播放,调用一次,改变一次状态
  253.         {
  254.                 this.CYL=this.CYL?false:true;
  255.         }
  256.         this.INIT=function()
  257.         {
  258.                 if(this.RDM==true)//无序播放
  259.                 {
  260.                         SoundID=GetNextID(MusicLength,this.RDM,this.MASMODE);
  261.                         nextID==GetNextID(MusicLength,this.RDM,this.MASMODE);
  262.                 }
  263.                 if(!M_Stop)
  264.                 {
  265.                         PlayID(SoundID);
  266.                 }
  267.         }
  268.         //----------传输播放状态-------------------------
  269.         this.SENDLRC=function(c_id)//无参数时读取当前歌曲的内容,如果有参数,则读取指定参数歌曲的内容
  270.         {
  271.                 if(arguments.length>0)return Music[c_id];
  272.                 return Music[SoundID];//url:歌曲链接地址,name:歌曲名,file:LRC歌词地址(用于以后的功能扩展),id:歌曲的id
  273.         }
  274.         this.RESTA=function()//返回播放器状态
  275.         {
  276.                 return mediaObj.playState;
  277.         }
  278.         //----------外部播放控制接口-------------------------
  279.         this.MENUPLAY=function(c_id,n_id)//播放,并且设置当前ID,和下一首的ID(作用是用在新开的窗口的接口)
  280.         {
  281.                 SoundID=c_id;
  282.                 nextID=n_id;
  283.                 PlayID(SoundID);
  284.                 His.input(SoundID);
  285.                 this.MSG=MsgRefresh();
  286.                 this.MASMODE=false;
  287.         }
  288.         this.GetMusicLength=function()//返回曲目总数
  289.         {
  290.                 return MusicLength;
  291.         }
  292.         this.OPENMUNU=function()//打开歌曲列表
  293.         {
  294.                 var url="XBandLH.htm?"+_objname;
  295.                 WinOPEN=window.open(url,"WinList", " width=250, height=300,scrollbars=1 ");
  296.         }
  297. }
  298. </script>
  299. <body bgcolor=#000000>
  300. <div id=show></div>
  301. <input type="button" name="Submit" value="播放" onclick="oo.PLAY();"/>
  302. <input type="button" name="Submit2" value="上一首" onclick="oo.REV();" />
  303. <input type="button" name="Submit3" value="下一首" onclick="oo.NEXT();" />
  304. <input type="button" name="Submit0" value="停止" onclick="oo.STOP();" />
  305. <input type="button" name="Submit4" value="打开歌曲列表" onclick="oo.OPENMUNU();" />
  306. <input type="button" name="Submit5" value="随机/顺序" onclick="oo.SETRDM();" />
  307. <input type="button" name="Submit5" value="连续/单曲" onclick="oo.SETCYCLE();" />
  308. <object id='media1' classid=CLSID:6BF52A52-394A-11D3-B153-00C04F79FAA6 width='400' height='100'>
  309.         <param NAME='URL' VALUE=''>
  310.         <param NAME='rate' VALUE='-1'>
  311.         <param NAME='balance' VALUE='0'>
  312.         <param NAME='currentPosition' VALUE='0'>
  313.         <param NAME='defaultFrame' VALUE=''>
  314.         <param NAME='playCount' VALUE='1'>
  315.         <param NAME='autoStart' VALUE='-1'>
  316.         <param NAME='currentMarker' VALUE='0'>
  317.         <param NAME='invokeURLs' VALUE='-1'>
  318.         <param NAME='baseURL' VALUE=''>
  319.         <param NAME='volume' VALUE='100'>
  320.         <param NAME='mute' VALUE='0'>
  321.         <param NAME='uiMode' VALUE='mini'>
  322.         <param NAME='stretchToFit' VALUE='0'>
  323.         <param NAME='windowlessVideo' VALUE='0'>
  324.         <param NAME='enabled' VALUE='-1'>
  325.         <param NAME='enableContextMenu' VALUE='0'>
  326.         <param NAME='fullScreen' VALUE='0'>
  327.         <param NAME='SAMIStyle' VALUE=''>
  328.         <param NAME='SAMILang' VALUE=''>
  329.         <param NAME='SAMIFilename' VALUE=''>
  330.         <param NAME='captioningID' VALUE=''>
  331.         <param NAME='enableErrorDialogs' VALUE='0'>
  332.         <param NAME='_cx' VALUE='5080'>
  333.         <param NAME='_cy' VALUE='5080'>
  334.         </object>
  335. </body>
  336. <script language="javascript">
  337. var oo=new classMedia('media1','show','oo');//第一个参数,播放器ID,第二个参数显示歌词容器ID,第三个参数,所创建的的对象变量名称
  338. oo.AddList('http://qz.gx.vnet.cn/bbs/music/0731/02.wma','情归于尽','qingguiyijin.lrc');
  339. oo.AddList('http://qz.gx.vnet.cn/bbs/music/0318/04.wma','熟能生巧','snsq.lrc');
  340. oo.AddList('http://qz.gx.vnet.cn/bbs/music/0318/06.wma','人质','renzi.lrc');
  341. oo.AddList('http://qz.gx.vnet.cn/bbs/music/0318/09.wma','夜曲','yeqi.lrc');
  342. oo.AddList('http://qz.gx.vnet.cn/bbs/music/0318/10.wma','只对你说','zdns.lrc');
  343. oo.AddList('http://bbs.yc360.net/music/suibianxiaohui.mp3','随便','suibian.txt');
  344. oo.AddList('http://202.195.195.137/music/赵传/爱要怎么说出口.mp3','爱要怎么说出口','ayzmsck.lrc');
  345. oo.AddList('http://ctone.zmcc.com.cn/ColorTone/music/03/01/01/c0301010559.wma','一辈子孤单','ybzgd.lrc');
  346. oo.AddList('http://www.eqdu.com/modules/music/upload/music/200681441498453.mp3','青青河边草','qqhebianchao.lrc');
  347. oo.AddList('http://www.vllan.com/bbs/UploadFile/2006-3/200631610291574926.mp3','在那遥远的地方','znyyddf.txt');
  348. oo.AddList('http://www.badmintonfan.com/mv/cksdxz.mp3','从开始到现在 ','kadxz.lrc');
  349. oo.AddList('http://www.tiantian2006.com/闪亮的日子-罗大佑.mp3','闪亮的日子 ','shanlian.lrc');
  350. oo.AddList('http://www.blogd.cn/UploadFiles/2006-11/1113752996.mp3','菊花台','juhuatai.lrc');
  351. oo.AddList('http://www.cxpre.com/tinguting/uploadfile/20059763413933.wma','莫斯科没有眼泪','mosike.lrc');
  352. oo.AddList('http://down.yysy.net/Music/siledouyaoai.mp3','死了都要爱','xileai.lrc');
  353. oo.AddList('http://maolv.cm310.com/mp3/206.mp3','嘟啊嘟');
  354. oo.AddList('http://www.tt99w.com/dj/djku/kanshangta.mp3','看上她','kanshangta.lrc');
  355. oo.AddList('http://www.nnred.com/bbs/mp3/11.mp3','飘移','piaoyi.lrc');
  356. oo.AddList('http://www.1860tm.com/word/firstlove.mp3','第一次爱的人','diyiciairen.lrc');
  357. oo.AddList('http://online.btvu.org/club/forum/files/307.mp3','爱你','ainiwang.lrc');
  358. oo.AddList('http://www.7say.com/music/fly.wma','隐形的翅膀','yinche.lrc');
  359. oo.AddList('http://www.malamusic.com.tw/ezfiles/mala/img/img/2275/marvin7.mp3','轮回');
  360. oo.INIT();//初始化并开始播放
  361. </script>
  362. </html>
复制代码运行代码另存代码

Rank: 3Rank: 3

升级  50.67%

注册时间
2005-7-4
威望
65
阅读权限
30
积分
352
帖子
75
精华
0
UID
32227
状态
当前离线
发表于 2006-12-20 18:50:57 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料

由主页面弹出的菜单页面代码--XBandLH.htm

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  2. <HTML><HEAD><TITLE>播放清单 </TITLE>
  3. <META http-equiv=Content-Type content="text/html; charset=gb2312">
  4. <style>
  5. A {
  6.         COLOR: #334455; TEXT-DECORATION: none
  7. }
  8. A:link {
  9.         COLOR: #334455; TEXT-DECORATION: none
  10. }
  11. A:visited {
  12.         COLOR: #223344; TEXT-DECORATION: none
  13. }
  14. A:active {
  15.         COLOR: #334455; TEXT-DECORATION: none
  16. }
  17. A:hover {
  18.         COLOR: gold; TEXT-DECORATION: none
  19. }
  20. BODY {
  21.         MARGIN: 0px; CURSOR: crosshair; BACKGROUND-COLOR: #8498a3
  22. }
  23. BODY {
  24.         FONT-SIZE: 9pt; COLOR: #b0c0d0; FONT-FAMILY: 'Tahoma','Verdana','Arial'
  25. }
  26. TD {
  27.         FONT-SIZE: 9pt; COLOR: #b0c0d0; FONT-FAMILY: 'Tahoma','Verdana','Arial'
  28. }
  29. a.redcolor:link,a.redcolor:visited{color:#ff7788;}
  30. a.redcolor:hover{color:#FF0000;TEXT-DECORATION:underline; }

  31. </style>
  32. </HEAD>
  33. <BODY onselectstart="return false" ondragstart="return false" leftMargin=0
  34. topMargin=0 marginheight="0" marginwidth="0">
  35. <div style="display:none" id="SoundList">

  36. </div>
  37. <TABLE height="100%" cellSpacing=0 cellPadding=0 width="100%" border=0>
  38.   <TBODY>
  39.   <TR>
  40.     <TD align=middle width="100%" bgColor=#304050 height=25><IMG height=25
  41.       alt="播放清单" src="img/pl.gif"
  42.     width=157></TD></TR>
  43.   <TR>
  44.     <TD vAlign=top>
  45.       <DIV id=showList>
  46.           </DIV></TD>
  47.   </TR>
  48.   <TR>
  49.     <TD vAlign=bottom align="center">
  50.       <DIV id=pageList><a href="#hxb" id="go0">|&lt;&lt;</a>&nbsp;<a href="#hxb" id="goRev"> &lt;</a>&nbsp;&nbsp;&nbsp;
  51.            <a href="#hxb" id="goNext">&gt;</a> &nbsp;<a href="#hxb" id="goEnd">&gt;&gt;| </a></DIV></TD></TR>
  52.   <TR>
  53.     <TD align="center"  style="word-break: break-all; word-wrap:break-word;">
  54.         <table width="90%" border="0" cellspacing="0" cellpadding="0">
  55.   <tr>
  56.     <td><div id=pagenume></div></td>
  57.   </tr>
  58. </table>
  59.         </TD></TR>
  60.   <TR>
  61.     <TD align=middle bgColor=#304050 height=20><SPAN id=pageInfo></SPAN>&nbsp;
  62.       <IMG title=全部选取 style="CURSOR: hand"  height=10
  63.       src="img/pl_btn_allsel.gif" width=35 align=absMiddle
  64.       border=0 id="selall"> <IMG title=全部不选 style="CURSOR: hand"
  65.       height=10 src="img/pl_btn_desel.gif" width=35
  66.       align=absMiddle border=0 id="nosel"> <IMG title=播放已选取的曲目 style="CURSOR: hand"
  67.        height=10
  68.       src="img/pl_btn_playsel.gif" width=35 align=absMiddle
  69.       border=0 id="playdsel"> <IMG title=关闭播放清单窗口 style="CURSOR: hand" onclick=window.close()
  70.       height=10 src="img/pl_btn_winclose.gif" width=35
  71.       align=absMiddle border=0> &nbsp; </TD></TR></TBODY></TABLE>
  72.           </BODY>
  73.           </HTML>
  74. <script language="javascript" type="text/jscript">
  75. var CurrentId=0;
  76. var NextSoundId=0;
  77. //移除search方法留下的问号)
  78. OpenerMedia=eval("opener."+document.location.search.substring(1))//opener.oo;
  79. self.focus();
  80. var CurrentPage=0;
  81. var PageSize=15;
  82. var SonndLenght=OpenerMedia.GetMusicLength();
  83. var pageNume=Math.floor(SonndLenght/PageSize);
  84. if(pageNume<SonndLenght/PageSize)
  85. {
  86.         pageNume+=1;
  87. }

  88. var MPSFlag=OpenerMedia.CYL;//循环
  89. function PageNumeColor(p)
  90. {
  91.         for(var i=0;i<pageNume;i++)
  92.         {
  93.                 document.getElementById('pNume'+i).className='';
  94.         }
  95.         document.getElementById('pNume'+p).className="redcolor";
  96. }
  97. function MadePage(_id){
  98.         var htmlTag = document.getElementById('page'+_id);
  99.         var tagDiv = document.getElementById('showList')
  100.         if(htmlTag) return;
  101.         var divobj = document.createElement('div');
  102.     divobj.style.display ='none';
  103.         divobj.id = 'page'+_id;
  104.         divobj.innerHTML=MadeListHtml(_id*PageSize,PageSize)
  105.         tagDiv.appendChild(divobj);
  106. }
  107. function MadePageNume()
  108. {
  109.         var str='*';
  110.         for(var menuPage=0;menuPage<pageNume;menuPage++)
  111.         {
  112.                 str+="<a href=#hxb onclick='GoPage("+menuPage+")' id='pNume"+menuPage+"'>"+(menuPage+1)+"</a>*"
  113.         }
  114.         return str;
  115. }
  116. function MadeListHtml(st,l)
  117. {       
  118.         var str='';
  119.         var name='';
  120.         while(l-- && st<SonndLenght)
  121.         {
  122.                 name=OpenerMedia.SENDLRC(st).name;//.BgSoundName[st]
  123.                 str+="<input type=checkbox name=sound value="+st+"><a href=#hxb onclick='p("+st+")'>"+(st+1)+"."+name+"</a><br>";
  124.                 st++;
  125.         }
  126.         return str;       
  127. }
  128. function pageInit(p)
  129. {       
  130.         MadePage(0);
  131.         document.getElementById('page0').style.display='';
  132.         document.getElementById('pagenume').innerHTML=MadePageNume();
  133.         PageNumeColor(0);
  134. }
  135. function HiddenPage()
  136. {
  137.         for(var i=0;i<pageNume;i++)
  138.         {
  139.                 if(document.getElementById('page'+i))
  140.                 {
  141.                         document.getElementById('page'+i).style.display='none';
  142.                 }
  143.         }
  144. }
  145. function AllNoSel()
  146. {
  147.    var a = document.getElementsByTagName("input");
  148.    for (var i=0; i<(a.length); i++)
  149.    {
  150.       if (a[i].type == "checkbox") a[i].checked = false;
  151.    }
  152. }
  153. function SelAll()
  154. {
  155.    var a = document.getElementsByTagName("input");
  156.    for (var i=0; i<(a.length); i++)
  157.    {
  158.       if (a[i].type == "checkbox") a[i].checked = true;
  159.    }
  160. }
  161. function GoNextPage()
  162. {
  163.         if(CurrentPage==pageNume-1)return;
  164.         HiddenPage();
  165.         CurrentPage++;
  166.         MadePage(CurrentPage);
  167.         document.getElementById('page'+CurrentPage).style.display='';
  168.         PageNumeColor(CurrentPage);
  169. }
  170. function GoRevPage()
  171. {
  172.         if(CurrentPage==0)return;
  173.         HiddenPage();
  174.         CurrentPage--;
  175.         MadePage(CurrentPage);
  176.         document.getElementById('page'+CurrentPage).style.display='';
  177.         PageNumeColor(CurrentPage);
  178. }
  179. function GoPage0()
  180. {
  181.         HiddenPage();
  182.         CurrentPage=0;
  183.         MadePage(CurrentPage);
  184.         document.getElementById('page0').style.display='';
  185.         PageNumeColor(CurrentPage);
  186. }
  187. function GoPageEnd()
  188. {
  189.         HiddenPage();
  190.         CurrentPage=pageNume-1;
  191.         MadePage(CurrentPage);
  192.         document.getElementById('page'+(pageNume-1)).style.display='';
  193.         PageNumeColor(CurrentPage);
  194. }
  195. function GoPage(p)
  196. {
  197.         HiddenPage();
  198.         CurrentPage=p;
  199.         MadePage(CurrentPage);
  200.         document.getElementById('page'+p).style.display='';
  201.         PageNumeColor(CurrentPage);
  202. }
  203. document.getElementById('selall').onclick=function(){SelAll()};
  204. document.getElementById('nosel').onclick=function(){AllNoSel()};
  205. document.getElementById('goNext').onclick=function(){GoNextPage()};
  206. document.getElementById('goRev').onclick=function(){GoRevPage()};
  207. document.getElementById('goEnd').onclick=function(){GoPageEnd()};
  208. document.getElementById('go0').onclick=function(){GoPage0()};
  209. document.getElementById('playdsel').onclick=function(){PlaySelMusic();};
  210. pageInit();
  211. //-------------------------------------------------------------
  212. function GetNextSoundID()
  213. {
  214.         var a = document.getElementsByTagName("input");
  215.         var tmp=CurrentId;
  216.         if(CurrentId==a.length-1)CurrentId=-1;
  217.         while(CurrentId<a.length-1)
  218.         {
  219.                 CurrentId++;
  220.                 if(a[CurrentId].type == "checkbox" && a[CurrentId].checked==true)return CurrentId;
  221.                 if(tmp!=-1 && CurrentId==a.length-1)
  222.                 {
  223.                         CurrentId=-1;
  224.                         tmp=-1;
  225.                 }
  226.         }
  227.         return(0);
  228. }
  229. function window.onunload()
  230. {
  231.         OpenerMedia.MASMODE=true;
  232. }
  233. function p(x)
  234. {
  235.         OpenerMedia.PLAY(x);
  236.         opener=null;
  237.         window.close();
  238. }
  239. function PlaySelMusic()
  240. {
  241.         CurrentId=-1;
  242.         OpenerMedia.MENUPLAY(GetNextSoundID(),GetNextSoundID());
  243. }
  244. </script>
复制代码运行代码另存代码

使用道具 举报

Rank: 2

升级  82%

注册时间
2006-6-29
威望
63
阅读权限
20
积分
173
帖子
72
精华
0
UID
53804
状态
当前离线
发表于 2006-12-20 21:59:26 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料 查看个人网站
谢谢

收藏了 :loveliness:
Azamat 是少数民族,成人,英雄的含义。
--------------------------------

使用道具 举报

Rank: 2

升级  32%

注册时间
2005-12-14
威望
44
阅读权限
20
积分
98
帖子
26
精华
0
UID
44031
状态
当前离线
发表于 2006-12-21 09:47:37 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料

慢啊

慢啊

使用道具 举报

Rank: 3Rank: 3

升级  29.33%

注册时间
2006-12-18
威望
91
阅读权限
30
积分
288
帖子
93
精华
0
UID
62998
状态
当前离线
发表于 2006-12-21 17:56:19 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
能不能将列表与播放器放在同一页?

使用道具 举报

Rank: 3Rank: 3

升级  50.67%

注册时间
2005-7-4
威望
65
阅读权限
30
积分
352
帖子
75
精华
0
UID
32227
状态
当前离线
发表于 2006-12-21 22:25:05 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料

这是本人写的一个播放器的例子

界面和功能有待大家一起来进行完善,
注:播放器内含自己写的LRC类,具有播放歌词的功能。

[ 本帖最后由 linfeng 于 2006-12-21 23:07 编辑 ]
附件: 你需要登录才可以下载或查看附件。没有帐号?加入无忧

使用道具 举报

Rank: 2

升级  54%

注册时间
2006-11-3
威望
66
阅读权限
20
积分
131
帖子
64
精华
0
UID
58780
状态
当前离线
发表于 2006-12-23 10:19:09 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
找了好久了,谢谢了呀:handshake ,还有一个问题,打开播放列表是空的

[ 本帖最后由 sh0w 于 2006-12-23 10:22 编辑 ]

使用道具 举报

Rank: 3Rank: 3

升级  50.67%

注册时间
2005-7-4
威望
65
阅读权限
30
积分
352
帖子
75
精华
0
UID
32227
状态
当前离线
发表于 2006-12-24 08:37:24 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料

播放列表是用打开窗口处理的

要以XBandLH.htm
为文件名。
在我上传的附件我下载了再试,是正常的(IE6)

使用道具 举报

Rank: 2

升级  48.67%

注册时间
2006-9-11
威望
34
阅读权限
20
积分
123
帖子
103
精华
0
UID
56317
状态
当前离线
发表于 2006-12-24 11:25:43 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
很不错的说!
www.soulcradle.com 此网站没有病毒,请放心浏览!

使用道具 举报

Rank: 3Rank: 3

升级  29.33%

注册时间
2006-12-18
威望
91
阅读权限
30
积分
288
帖子
93
精华
0
UID
62998
状态
当前离线
发表于 2006-12-25 11:03:00 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
原帖由 linfeng 于 2006-12-24 08:37 发表
要以XBandLH.htm
为文件名。
在我上传的附件我下载了再试,是正常的(IE6)


测试了基本正常!

使用道具 举报

Rank: 6Rank: 6

升级  28.5%

注册时间
2004-5-16
威望
875
阅读权限
70
积分
1570
帖子
837
精华
1
UID
11533
状态
当前离线
发表于 2006-12-26 19:02:20 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
封装的不错,哪位能帮忙改改,把这个也封装一下,网址: http://bbs.51js.com/thread-64455-1-1.html

使用道具 举报

您需要登录后才可以回帖 登录 | 加入无忧

Archiver|手机版|无忧脚本 ( 苏ICP备05080427号 )|值班电话:027-62300445  

GMT+8, 2012-2-7 21:42 , Processed in 0.067796 second(s), 14 queries , Gzip On, Memcache On.

Powered by Discuz! X2

© 1999-2011 无忧脚本

回顶部