MozTW 討論區 https://forum.moztw.org/ |
|
音樂播放器 https://forum.moztw.org/viewtopic.php?f=13&t=12893 |
第 1 頁 (共 1 頁) |
發表人: | jonnysun [ 2006-02-17, 15:11 ] |
文章主題 : | 音樂播放器 |
這是個只能在IE上正常播放的播放器,有人能修改成FF也行嗎? 程式碼如下 代碼: <!--隨機撥放音樂_開始-->
<script language="javascript"> <!-- function my_get_stop() { document.all.music_show.innerHTML='音樂停止'; } function my_get_music() { var songurl,songname,all,value; songurl =new Array(); songname =new Array(); all =13; //歌曲總數 //歌曲 songurl[0] ='http://www.jonnysun.com/music/01.wma'; songurl[1] ='http://www.jonnysun.com/music/02.wma'; songurl[2] ='http://www.jonnysun.com/music/03.wma'; songurl[3] ='http://www.jonnysun.com/music/04.wma'; songurl[4] ='http://www.jonnysun.com/music/05.wma'; songurl[5] ='http://www.jonnysun.com/music/06.wma'; songurl[6] ='http://www.jonnysun.com/music/07.wma'; songurl[7] ='http://www.jonnysun.com/music/08.wma'; songurl[8] ='http://www.jonnysun.com/music/09.wma'; songurl[9] ='http://www.jonnysun.com/music/10.wma'; songurl[10] ='http://www.jonnysun.com/music/11.wma'; songurl[11] ='http://www.jonnysun.com/music/12.wma'; songurl[12] ='http://www.jonnysun.com/music/13.wma'; //歌名 songname[0] ='夏影'; songname[1] ='銀色(orgel version)'; songname[2] ='銀色'; songname[3] ='ふたリ'; songname[4] ='平和への祈りi'; songname[5] ='平和の祈り'; songname[6] ='夜想'; songname[7] ='哀しみを越えて'; songname[8] ='涼風−メインテーマ−'; songname[9] ='Mystic Space'; songname[10] ='父の影'; songname[11] ='另一個世界'; songname[12] ='遠い日の傷跡−piano−'; value=Math.round(Math.random()*(all-1)); document.all.music_show.innerHTML=songname[value]; document.all.music_show.innerHTML+='<embed src="'+songurl[value]+'" autostart="true" loop="true" hidden>'; } onload=my_get_music; //--> </script> <b> <a href="javascript:my_get_music();"><font color="#CCFFCC">換首</font></a><font color="#00FF00">/</font><a href="javascript:my_get_stop();"><font color="#CCFFCC">停止</font></a></b> <font color="#00FFFF">現在撥放:</font><font color="#CCFFCC" id="music_show"></font> <!--隨機撥放音樂_結束--> 希望有功力高強的朋友幫幫忙...謝謝 |
發表人: | james [ 2006-02-17, 17:16 ] |
文章主題 : | |
其實,只因使用了 "document.all",改成 w3c 的標準語法 document.getElementById 即可。 另外,稍微改一下程式碼,希望別介意。試過在 IE6、Firefox 1.5.0.1、Opera 8.5 都可以播放。 代碼: <!--隨機撥放音樂_開始-->
<script language="javascript"> <!-- function myMusicStop() { document.getElementById("music_show").innerHTML='音樂停止'; } function myGetMusic() { var song = [ {url:'http://www.jonnysun.com/music/01.wma', name:'夏影'}, {url:'http://www.jonnysun.com/music/02.wma', name:'銀色(orgel version)'}, {url:'http://www.jonnysun.com/music/03.wma', name:'銀色'}, {url:'http://www.jonnysun.com/music/04.wma', name:'ふたリ'}, {url:'http://www.jonnysun.com/music/05.wma', name:'平和への祈りi'}, {url:'http://www.jonnysun.com/music/06.wma', name:'平和の祈り'}, {url:'http://www.jonnysun.com/music/07.wma', name:'夜想'}, {url:'http://www.jonnysun.com/music/08.wma', name:'哀しみを越えて'}, {url:'http://www.jonnysun.com/music/09.wma', name:'涼風−メインテーマ−'}, {url:'http://www.jonnysun.com/music/10.wma', name:'Mystic Space'}, {url:'http://www.jonnysun.com/music/11.wma', name:'父の影'}, {url:'http://www.jonnysun.com/music/12.wma', name:'另一個世界'}, {url:'http://www.jonnysun.com/music/13.wma', name:'遠い日の傷跡−piano−'} ]; var theSong=Math.round(Math.random()*(song.length-1)); var musicShow = document.getElementById("music_show"); musicShow.innerHTML = song[theSong].name + '<embed src="' + song[theSong].url + '" type="audio/x-ms-wma" autostart="true" loop="true" hidden>'; } onload=myGetMusic; //--> </script> <b> <a href="javascript:myGetMusic();"><font color="#CCFFCC">換首</font></a> <font color="#00FF00">/</font> <a href="javascript:myMusicStop();"><font color="#CCFFCC">停止</font></a> </b> <font color="#00FFFF">現在撥放:</font><font color="#CCFFCC" id="music_show"></font> <!--隨機撥放音樂_結束--> |
發表人: | janson04 [ 2006-02-18, 14:55 ] |
文章主題 : | |
我的Firefox不能撥耶! ![]() OPERA 跟 IE倒是沒問題,難道我少設定了什麼? |
發表人: | james [ 2006-02-18, 17:14 ] |
文章主題 : | |
先前 Fx 測試環境已安裝 StopAutoPlay,因此可以撥放。 測試後發現若不顯示WMP的撥放控制,需將 <embed>的裡的屬性改成如下: 代碼: musicShow.innerHTML = song[theSong].name + '\
<embed src="' + song[theSong].url + '" \ type="audio/x-ms-wma" \ pluginspage="http://www.microsoft.com/Windows/MediaPlayer/" \ width="0" \ height="0" \ autostart="true" \ controltype="2" \ showcontrols="1" \ showstatusbar="1" \ loop="true" \ > \ </embed>'; 請再試試。 |
發表人: | janson04 [ 2006-02-18, 19:09 ] |
文章主題 : | |
感謝可以播放了, 可是他撥完一首歌後,就會停止了,不會像之前一樣重複播放 或者是 亂數下一首歌,可以再請大大改一下嗎 (我不會JavaScript ![]() |
發表人: | james [ 2006-02-18, 20:49 ] |
文章主題 : | |
janson04 寫: 感謝可以播放了,
可是他撥完一首歌後,就會停止了,不會像之前一樣重複播放 或者是 亂數下一首歌,可以再請大大改一下嗎 (我不會JavaScript ![]() "可以重複撥放" 指的可是在 IE6? 在 Fx 中似乎原程式碼也不會 loop (雖然 loop="true"), 暫時看不出如何改。 "亂數下一首歌" 應該需按"換首"。 改用 <object> 再傳入 playCount 也許可以達到"重複撥放"的效果", 不過我得另外找時間再試。 |
發表人: | janson04 [ 2006-02-18, 20:59 ] |
文章主題 : | |
james 寫: janson04 寫: 感謝可以播放了, 可是他撥完一首歌後,就會停止了,不會像之前一樣重複播放 或者是 亂數下一首歌,可以再請大大改一下嗎 (我不會JavaScript ![]() "可以重複撥放" 指的可是在 IE6? 在 Fx 中似乎原程式碼也不會 loop (雖然 loop="true"), 暫時看不出如何改。 "亂數下一首歌" 應該需按"換首"。 改用 <object> 再傳入 playCount 也許可以達到"重複撥放"的效果", 不過我得另外找時間再試。 嗯~不管在改前或改後IE都會自動重複播放 Opera則是改前改後都不能自動重複播放 而Firefox也是 ![]() |
發表人: | hansdofer [ 2006-02-20, 17:25 ] |
文章主題 : | |
我是沒有修改,沿用原本的 可以在Fx播放,至於你說重複播放 在沒修改前,那個本身就不會重複播放了 那要點選換首,才會播放下一首. |
發表人: | JellyCatz果凍喵 [ 2006-04-08, 05:34 ] |
文章主題 : | |
感謝這篇文章給我的靈感~ 讓我完成了一個InternetRadio的播放器~ 有預先播放的功能~ 可選擇上下或是亂數頻道~ http://catz.no-ip.com/blogs/eureka/arch ... 00200.html http://catz.no-ip.com/blogs/eureka/arch ... 080518.zip 歌曲用的是SHOUTcast網路裡面的歌哩~ 延伸的想法應該是在頻道(or歌曲)介紹那邊使用圖片應該會更好些就是了~ 希望有心人士能更精進些就是了 ^^ |
第 1 頁 (共 1 頁) | 所有顯示的時間為 UTC + 8 小時 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |