博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
H5音乐播放器【歌单列表】
阅读量:5787 次
发布时间:2019-06-18

本文共 2050 字,大约阅读时间需要 6 分钟。

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

首先需要获取数据,具体获取数据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();
}

}

转载于:https://www.cnblogs.com/lihaolh/p/10394370.html

你可能感兴趣的文章
information_schema系列五(表,触发器,视图,存储过程和函数)
查看>>
瓜子二手车的谎言!
查看>>
[转]使用Git Submodule管理子模块
查看>>
DICOM简介
查看>>
Scrum之 Sprint计划会议
查看>>
List<T> to DataTable
查看>>
[Java]Socket和ServerSocket学习笔记
查看>>
stupid soso spider
查看>>
svn命令在linux下的使用
查看>>
There is insufficient system memory to run this query 错误
查看>>
基于ARM-contexA9-Linux驱动开发:如何获取板子上独有的ID号
查看>>
我们奋斗着并将持续奋斗 ----暨清华D-Lab创新基地揭牌仪式
查看>>
MySQL主从同步相关-主从多久的延迟?
查看>>
Android APK文件解析
查看>>
【MyBatis框架】MyBatis入门程序第二部分
查看>>
一分钟了解阿里云产品:网络安全专家服务
查看>>
自定义View以及事件分发总结
查看>>
人生第一个过万 Star 的 GitHub 项目诞生
查看>>
Mac下配置多个SSH-Key (gitLab)
查看>>
Gradle之module间依赖版本同步
查看>>