利用jQuery实现音乐播放歌词同步显示代码



6 22 8



特效描述:利用jQuery实现 音乐播放 歌词同步 显示代码,利用jQuery实现音乐播放歌词同步显示代码

代码结构

1. 引入JS

<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/song.js"></script>

2. HTML代码

<div id="app">
  <button class="btnpic">播放</button>
  <audio src="mp3/cc.mp3" id="my-audio"></audio>
  <!-- 存放歌词 -->
  <p class="name">歌曲名:匆匆那年</p>
  <div id="musicContent">
    <span class="musicContent01"></span>
    <span class="musicContent02"></span>
    <!--<span class="musicContent03"></span>-->
  </div>
  <span class="now_time" id="now_time">00:00</span>
</div>
<script type="text/javascript">
  $(function () {
    var my_audio = document.getElementById("my-audio");
    var now_time = document.getElementById("now_time");
    // 暂停播放
    function playPause() {
      if (my_audio.paused) {
        my_audio.play();
        $('.btnpic').text('暂停');
      } else {
        my_audio.pause();
        $('.btnpic').text('播放');
      }
    }
    // 时间转换 00:00
    var timeFormat = function(seconds){
      var m = Math.floor(seconds/60)<10 ? "0"+Math.floor(seconds/60) : Math.floor(seconds/60);
      var s = Math.floor(seconds-(m*60))<10 ? "0"+Math.floor(seconds-(m*60)) : Math.floor(seconds-(m*60));
      return m+":"+s;
    };
    // 编译歌词 并显示
    var lyric = parseLyric(songContent);
    console.log(lyric);
    var musicContent = document.getElementById("musicContent");
    my_audio.ontimeupdate = function () {
      // 音频播放时间
      now_time.innerHTML = timeFormat(my_audio.currentTime);
      for (var i = 0; i < lyric.length; i++) {
        /*当前播放的时间*/
        if (this.currentTime > lyric[i][0]) {
          if (i >= 1) {
            // lyric 二维数组 第一个span放当前歌词前一条,第二个span放当前显示歌词,第三个span放当前歌词后一条
            $(".musicContent01").html(lyric[i - 1][1]);
            $(".musicContent02").html(lyric[i][1]);
//            $(".musicContent03").html(lyric[i + 1][1]);
          } else {
            $(".musicContent02").html(lyric[i][1]);
            $(".musicContent03").html(lyric[i + 1][1]);
          }
        }
      }
    }
    $('.btnpic').click(function () {
      playPause();
    });
  })
</script>
<div style="text-align:center;margin:50px 0; font:normal 14px/24px 'MicroSoft YaHei';">
</div>



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册


热门标签: 滑动星星打分 其他 播放器

×
×

注册

官方QQ群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到