asfunction+media實現的mp3連放播放器+windows組件的用法

來源:互聯網
上載者:User
window

先看看效果


源檔案下載
//以下是增加音樂的地址與音樂的標題,你可以是用xml匯入
music_adress=["http://www.klstudio.com/media/music07.mp3","http://www.klstudio.com/media/music06.mp3","h' target="_blank" >
http://www.klstudio.com/media/music07.mp3","http://www.klstudio.com/media/music06.mp3",
"http://www.klstudio.com/media/music17.mp3","http://www.klstudio.com/media/200492011225.mp3",
"http://www.klstudio.com/media/Nelly_Dilemma.mp3","http://www.klstudio.com/media/music08.mp' target="_blank" >
http://www.klstudio.com/media/Nelly_Dilemma.mp3","http://www.klstudio.com/media/music08.mp3",
"http://www.klstudio.com/media/music09.mp3","http://www.klstudio.com/media/music10.mp3' target="_blank" >
http://www.klstudio.com/media/music09.mp3","http://www.klstudio.com/media/music10.mp3",
"http://www.klstudio.com/media/music11.mp3","http://www.klstudio.com/media/music12.mp3","http' target="_blank" >
http://www.klstudio.com/media/music11.mp3","http://www.klstudio.com/media/music12.mp3",
"http://www.klstudio.com/media/music13.mp3","http://www.klstudio.com/media/music01.mp3","http' target="_blank" >
http://www.klstudio.com/media/music01.mp3","http://www.klstudio.com/media/music02.mp3",
"http://www.klstudio.com/media/music03.mp3","http://w' target="_blank" >
http://www.klstudio.com/media/music03.mp3","http://www.klstudio.com/media/music04.mp3",
"http://www.klstudio.com/media/music05.mp3","http://www' target="_blank" >
http://www.klstudio.com/media/music05.mp3","http://www.flashk3.com/2004/music99/workgroups/王蓉 - 我不是黃蓉.mp3"
,"http://www.flashk3.com/2004/music99/workgroups/陳慧琳 - 希望(大長今).mp3",
"http://www.flashk3.com/2004/music99/經典推薦/老狼 - 同桌的你.mp3",
"http://www.flashk3.com/2004/music99/經典推薦/林憶蓮 - 當愛已成往事.mp3"];
music_title=["沙寶亮-暗香","梁靜茹-勇氣","周傳雄-黃昏","楊臣剛-老鼠愛大米","Nelly-Dilemma Ft Kelly Rowland",
"理查馬克斯-此情可待","勞賽爾-愛你在心口難開","卡本特-昨日重現","老鷹樂隊-加州旅館",
"菲爾科林斯-天堂裡的另一天","張棟樑-當你孤單你會想起誰","莎拉.布萊曼-斯卡布羅集市",
"唐磊-丁香花","夏日裡的春天-赤道和北極","林俊傑-江南","王菲-棋子","王蓉 - 我不是黃蓉",
"陳慧琳 - 希望(大長今)","老狼 - 同桌的你","林憶蓮 - 當愛已成往事"];
///////////////////////先說asfunction的用法吧;
asfunction
可用性
Flash Player 5。

用法
asfunction:function,"parameter"

參數
function 函數的標識符。

parameter 要傳遞給 function 參數中指定的函數的字串。

返回
無。

說明
協議;一個用於 HTML 文字欄位中 URL 的特殊協議。在 HTML 文字欄位中,可使用 HTML A 標籤超連結

文本。A 標籤的 HREF 屬性包含可用於類似 HTTP、HTTPS 或 FTP 等標準協議的 URL。asfunction 協議

是特定於 Flash 的一個附加協議,可使連結調用動作指令碼函數。

樣本
在此樣本中,代碼的前三行中定義了 MyFunc() 函數。TextField 對象 myTextField 與 HTML 文字欄位

相關聯。文本“Click Me!”是文字欄位中的一個超連結。當使用者單擊該超連結時,將調用 MyFunc() 函數:

function MyFunc(arg){
trace ("You clicked me!Argument was "+arg);
}
myTextField.htmlText ="<A HREF=\"asfunction:MyFunc,Foo \">Click Me!</A>";

在單擊該超連結後,下面的結果將顯示在“輸出”面板中:
You clicked me!Parameter was Foo

////放在第一貞中
//作者:yuheduo
//email:yuheduo@21cn.com
//blog:http://yuheduo.5dblog.com
//2005-11-1
var total=music_title.length-1;
var pagenum=5;//每頁個數
var pages=Math.floor(total/pagenum)+1;//頁數
var page=0;//第幾頁
_global.music_id;
function myFunction(id){
trace("輸出:"+id);
var num2=id-page*pagenum+1;
trace("num2="+num2+"前page="+page);
if(num2>pagenum){
page++;
num2-=5;
intxt(page);
trace("後page="+page);
}
for(var i=1;i<=pagenum;i++){//顯示色彩放到那一首就加色顯示,哈哈,還有點要改進的地
方,你自己去發現吧,請幫我改正,我們一起進步了。!!
if(i!=num2){
mcAll["mc"+i].txt.background=false;
}else{
mcAll["mc"+i].txt.background=true;
mcAll["mc"+i].txt.backgroundColor="0xFF0000";
};
}
_global.music_id=id;
var url=music_adress[id];
with(myControl){
associateDisplay(myDisplay);
activePlayControl=false;
autoPlay=true;
controllerPolicy="on";
backgroundStyle = "none";
volume=100;
}
with(myDisplay){
stop()
setMedia(url,"MP3");
play();
volume=100;
}
}
var mcAll:MovieClip=this.createEmptyMovieClip("mcAll",10);
mcAll._x=45;
mcAll._y=40;
//在mcAll中加入mc
for(var i=1;i<=pagenum+1;i++){
var t=mcAll.attachMovie("0","mc"+i,i);
t.txt.selectable=false;
t._x=0;
t._y=i*19;
}
function intxt(page){
for(var i=1;i<=pagenum;i++){
mcAll["mc"+i].txt.html=true;
//mcAll["mc"+i].txt.htmlText="<A
HREF=’asfunction:_root.myFunction,"+music_adress[(i+page*pagenum-1)]+"’>"+(i+page*pagenum)
+"."+music_title[(i+page*pagenum-1)]+"</A>";
mcAll["mc"+i].txt.htmlText="<A HREF=’asfunction:_root.myFunction,"+
(i+page*pagenum-1)+"’>"+(i+page*pagenum)+"."+music_title[(i+page*pagenum-1)]+"</A>";
}
mcAll.mc6.txt.html=true;
mcAll.mc6.txt.htmlText="<A href=’asfunction:_root.prevpage’>上一頁
</A>"+"________________________"+" <A href=’asfunction:_root.nextpage’>下一頁</A>";
}
intxt(page);
function nextpage(){
page++;
trace("page="+page);
if(page>(pages-1))page=0;
intxt(page);
}
function prevpage(){
page--;
trace("page="+page);
if(page<0)page=pages-1;;
intxt(page);
}
var myDListener = new Object();//放到最後,就放下一首
myDListener.complete = function() {
trace("放到最後了");
_global.music_id++;
if(_global.music_id>total){
_global.music_id=0;
page=0;
intxt(page);
}
myFunction(_global.music_id);
myFunction(_global.music_id);
};
myDisplay.addEventListener("complete", myDListener);
//////window組件的用法了
import mx.containers.Window;
import mx.managers.PopUpManager;
myhelp.html=true;
myhelp.htmlText="<a href=’asfunction:w’> 教 程 </a>";
function w(){
myW=new Object();
myW=PopUpManager.createPopUp(_root,Window,true);
myW.contentPath="yhd";
myW.closeButton=true;
myW.title=":教程:";
var comObj=new Object();
comObj.complete=function(){//適用匯入的mc的大小
myW.setSize(myW.content._width+6,myW.content._height+34);
myW.move((Stage.width-myW.width)/2,(Stage.height-myW.height)/2);
};
comObj.click=function(){//關閉按鈕的事件
myW.deletePopUp();
}
myW.addEventListener("complete",comObj);
myW.addEventListener("click",comObj);
}//end of w();
/////////////////以下是自己的,你可以修改成你的東西啊,哈哈!!
function metext(){
getURL("http://yuheduo.5dblog.com","_blank/’ target="_blank" >http://yuheduo.5dblog.com","_blank");
getURL("mailto:yuheduo@21cn.com","POST");
}
my.html=true;
my.autoSize="center";
my.background=true;
my.selectable=false;
my.backgroundColor="0xccccc";
my.border=true;
my.htmlText="<a href=’asfunction:metext’>小刀習作</a>";
//完成了

自己感覺是代碼太亂了,有時間整理一下,哈哈,希望網友們也能學到一點東西



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.