HTML5音乐播放功能增强:支持音乐列表播放,试听

作者:袖梨 2022-06-25

在自己动手写之前,看到了博客好友Tiandi写的“HTML5播放多首在线音乐”文章:

通过js+html5的方式实现,方法很简单,HTML代码如下:

 代码如下 复制代码



简易的html5音乐播放器


  • javascript:void(0);" onclick="playmusic(1)">爸爸去哪儿

  • 海阔天空

  • 再遇见
  •   


    正在播放:


    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标签,也有几项配置项可自由选择。插入多首音乐,个人还是推荐使用虾米音乐的,虽然界面丑点,也不支持换肤,但也还在可接受范围内,这个得靠自己去选择了。

    相关文章

    精彩推荐