在自己动手写之前,看到了博客好友Tiandi写的“HTML5播放多首在线音乐”文章:
通过js+html5的方式实现,方法很简单,HTML代码如下:
代码如下 |
复制代码 |
Js代码如下:
function playmusic(i){
var my = document.getElementById("player");
switch(i)
{
//每添加一个歌,则增加一个case,数字和html里设置的匹配
case 1:
my.setAttribute("src","http://mp3.wooeu.com/mp3.php/15314202/mp3wooeu.mp3"); //2.添加歌曲url
document.getElementById("mp3name").innerText = "正在获取歌曲。。。";
my.addEventListener("canplaythrough",
function() {
document.getElementById("mp3name").innerText = "群星 - 爸爸去哪儿"; //3.添加歌名
},false);
my.play();
break;
case 2:
my.setAttribute("src","http://mp3.wooeu.com/mp3.php/15257322/mp3wooeu.mp3");
document.getElementById("mp3name").innerText = "正在获取歌曲。。。";
my.addEventListener("canplaythrough",
function() {
document.getElementById("mp3name").innerText = "Beyond - 海阔天空";
},false);
my.play();
break;
case 3:
my.setAttribute("src","http://fdfs.xmcdn.com/group3/M00/3F/64/wKgDslJJhJiDr4JAACG0hCSFjS8536.mp3");
document.getElementById("mp3name").innerText = "正在获取歌曲。。。";
my.addEventListener("canplaythrough",
function() {
document.getElementById("mp3name").innerText = "苏打绿 - 再遇见";
},false);
my.play();
break;
default:
}
}
|
用的原生js写的,主要实现多首音乐点击切换播放。实现思路还是可以拿来借鉴下,在此表示感谢!
看完上面的方法,也就很自然地有了些自己的想法:
用数组的方式去添加音乐列表显示;
加入切换音乐时友好的文字提示;
文字标识当前播放曲目;
明文显示当前音乐的播放时间长度;
重新试听一次功能按钮;
具体显示效果,直接看本文右上角Demo实例!
Demo示例代码:
代码如下 |
复制代码 |
重听一次
|
现在的播放功能比原始的体验,感觉好了许多,但可改进,扩展的功能还很多,比如:多首歌曲自动连播,有兴趣的可再折腾下代码改进下的。
另外提下,wp博客文章中插入音乐,推荐使用TinyMCE Advanced编辑器,这款编辑器使用的插入音乐的方法也是使用html5 audio标签,也有几项配置项可自由选择。插入多首音乐,个人还是推荐使用虾米音乐的,虽然界面丑点,也不支持换肤,但也还在可接受范围内,这个得靠自己去选择了。