zoukankan      html  css  js  c++  java
  • H5音乐播放器【歌单列表】

    上篇详细描述了播放页歌词如何实现跟随跟单滚动,如何解析歌词,那么歌单页又是如何生成的呢,话不多说,直接上图上代码!

    首先需要获取数据,具体获取数据api请转到我跟我大兄弟博客去观看学习去,同时也感谢我大兄弟无私跟我们共享接口!

    www.bzqll.com  我大兄弟博客!

    歌单列表生成

    首先需要获取数据,然后生成列表!话不多说,直接上代码!

    /* 默认首页是音乐音乐热歌榜,处理返回的json数据用了一点es6的语法 */
    function indexSong() {

    var count = 1;
    loading("加载中...", 500);//悬浮弹框
    $.ajax({
    url: 'https:/xxxxxxxxxxxxx',
    type: 'GET',
    data: {
    "key": "xxxxxxxx",
    "id": "3778678",
    "limit": "200",
    "offset": "0"
    },//具体url  跟key请访问我大兄弟博客获取,我的vip路径地址跟key没办法共享,请谅解
    success: function(data) {
    var NECsongs = data.data.songs; //是个数组对象,存放多个json数据
    var length = NECsongs.length;
    var html = `<div class="listitems list-head">
    <span class="music-album">时长</span>
    <span class="auth-name">歌手</span>
    <span class="music-name">歌曲</span>
    </div>`;
    for(var vals of NECsongs) {  //循环获取歌单,歌单歌词链接,歌单信息等
    var ctime = krAudio.format(vals.time);
    html += `<div class="list-item" data-url="${vals.url}" data-pic="${vals.pic}" data-lrc="${vals.lrc}">
    <span class="list-num">${count}</span>
    <span class="list-mobile-menu"></span>
    <span class="music-album">${ctime}</span>
    <span class="auth-name">${vals.singer}</span>
    <span class="music-name">${vals.name}</span>
    </div>`;
    count++;
    }
    if(localStorage.getItem("songsList") != null && localStorage.getItem("songsList") != "") {
    html += localStorage.getItem("songsList");
    }

    listNow = html;//全局变量获取数据,存到本地
    html += `<div class="list-item text-center" title="全部加载完了哦~" id="list-foot">全部加载完了哦~</div>`;
    //添加到列表中
    mainList.html(html);//添加到播放列表
    // 播放列表滚动到顶部
    listToTop();
    tzUtil.animates($("#tzloading"), "slideUp"); //加载动画消失
    //刷新播放列表的总数
    krAudio.allItem = mainList.children('.list-item').length - 1; //减去最后一个提示框
    //更新列表小菜单
    appendlistMenu();
    //移动端列表点击播放
    mainList.find(".list-item").click(mobileClickPlayMainList);
    //移动端列表右边信息按钮的点击
    $(".list-mobile-menu").click(mobileListMenu);
    }
    });
    fineListBox();

    };

    列表点击播放

    function mobileClickPlayMainList() {

      if(isMobile) {

    playlist = "mainLists";
    search = false; //搜索标志结束
    krAudio.Currentplay = $(this).index() -1; //当前播放的音乐序号
    krAudio.seturl();
    krAudio.play();
    }

    }

  • 相关阅读:
    frp基础操作
    windowsformshost mouse event not transmit to it's parent control
    model attribute
    基于Flash模式开发视频会议
    通信业务服务器部署
    音视频开发的中心录像服务器
    音视频即时通讯开发功能介绍
    音视频和数据传输的局域网通讯
    音视频开发技术版本再升级
    音视频技术的的应急指挥通讯
  • 原文地址:https://www.cnblogs.com/lihaolh/p/10394370.html
Copyright © 2011-2022 走看看