MusicPlay 音乐播放器(纯前端)

article/2025/11/5 18:23:48

   纯Css,js前端音乐播放器,界面UI比较好。我特别喜欢,适合二次开发,调用了网易云第三方接口以及将歌曲链接导出可以访问的歌曲链接,实现了异步歌曲搜索播放,以及异步显示歌词等.结合html5 新特性实现歌曲暂停,下一首,快进等等.为大二前端练手项目.采用渐变质背景

是前端练手的好项目,强烈推荐,会让你对js产生浓浓的兴趣

挺好玩的,挺有意思的

记得当时搞出来高兴了好久

异步搜索歌曲链接并添加播放(原生态js异步调用网易云根据关键字匹配歌曲链接的接口)目前该接口因版权部分歌曲链接失效
网易云音乐接口:http://s.music.163.com/search/get/
如曹操这首歌的链接为http://s.music.163.com/search/get/?type=1&limit=6&s=%E6%9B%B9%E6%93%8D

返回的json 数据格式如下:image

参数
var data = {
"type": 1,//单曲
"limit": 1,//返回数量1
"s": value,//搜索词
"callback": "jsonpcallback"
};
搜索歌曲实现播放关键代码

searchBtn.addEventListener('click', function () {var value = keyword.value;if (!value) {alert('关键词不能为空');return;}//http://music.163.com/api/song/lyric?os=pc&id=" . $music_id . "&lv=-1&kv=-1&tv=-1.歌词的链接var url = "http://s.music.163.com/search/get/";var data = {"type": 1,//单曲"limit": 1,//返回数量1"s": value,//搜索词"callback": "jsonpcallback"};var buffer = [];for (var key in data) {buffer.push(key + '=' + encodeURIComponent(data[key]));}var fullpath = url + '?' + buffer.join('&');CreateScript(fullpath);
});
//异步加载js不影响当前渲染结果
function CreateScript (src) {var el = document.createElement('script');el.src = src;//加载urlel.async = true;el.defer = true;document.body.appendChild(el);
};

加载歌曲链接搜索歌词
网易云音乐歌词接口:http://music.163.com/api/song/lyric?os=pc&id='+rs.result.songs[0].id+'&lv=-1&kv=-1&tv=-1&callback=lycjson。 这里首先要获取歌曲id
如 曹操的歌词链接为:http://music.163.com/api/song/lyric?os=pc&id=108795&lv=-1&kv=-1&tv=-1&callback=lycjson

关键代码:

	function jsonpcallback (rs) {var resultHtml = '歌曲:<strong>' + rs.result.songs[0].name + '</strong>' + '歌手:<strong>' + rs.result.songs[0].artists[0].name + '</strong>' +'<a href="javascript:;" id="to-play">立即播放</a>';	//这个时候开始查询歌词// http://music.163.com/api/song/lyric?os=pc&id=" . $music_id . "&lv=-1&kv=-1&tv=-1var lyc='http://music.163.com/api/song/lyric?os=pc&id='+rs.result.songs[0].id+'&lv=-1&kv=-1&tv=-1&callback=lycjson';alert("已经搜索到了歌词");window.open(lyc,"新窗口歌词","width=500,height=500,toolbar=no,scrollbars=no,menubar=no,screenX=100,screenY=100"); //var el = document.createElement('script');//el.src = 'http://music.163.com/api/song/lyric?os=pc&id='+rs.result.songs[0].id+'&lv=-1&kv=-1&tv=-1&callback=lycjson';//加载url//el.async = true;//el.defer = true;//document.body.appendChild(el);//window.open(lyc,"新窗口歌词","width=100,height=200,toolbar=no,scrollbars=no,menubar=no,screenX=100,screenY=100"); // window.location.href=lyc;//解释json//alert(lycjson.lrc.lyric);//  http://s.music.163.com/search/get/?type=1&limit=1&s=%E5%8C%97%E4%BA%AC%E6%AC%A2%E8%BF%8E%E4%BD%A0&callback=jsonpcallback:formatted//http://s.music.163.com/search/get/?type=1&limit=1&s=%E6%88%91%E5%92%8C%E4%BD%A0&callback=jsonpcallbackresult.innerHTML = resultHtml;result.setAttribute('data-audio', rs.result.songs[0].audio);result.setAttribute('data-img', rs.result.songs[0].album.picUrl);result.setAttribute('data-music', rs.result.songs[0].name);result.setAttribute('data-singer', rs.result.songs[0].artists[0].name);result.style.opacity = '1';};function lycjson(rs){alert('123');var string =rs.lrc.lyric;alert(string);}

 

网站效果图:

image

歌词

image最后还有响应式布局:

image

 

挺有意思挺好玩的项目强烈推荐会让你对js产生浓浓的兴趣~~~~哈哈哈

 

Github上项目源码地址:

https://github.com/gb1998/MusicPlay/


http://chatgpt.dhexx.cn/article/BFbWq13L.shtml

相关文章

HTML5+JS实现简易的音乐播放器

HTML5JS实现简易的音乐播放器 播放器实现的功能 播放/暂停音乐切换歌曲&#xff0c;上/下一首歌音量最大或静音音乐播放时间实时变化进度条拖拽歌曲图片切换 播放器效果展示 代码展示 html <div class"musicBox" id"musicBox"><audio src"…

音乐播放器MusicBox

音乐播放器MusicBox 功能界面分析 界面要求较为简洁&#xff0c;仅需两个TextView&#xff0c;用于输出音乐名称及歌手姓名&#xff0c;下方三个ImageButton&#xff0c;用于播放&#xff0c;暂停或切换上一首&#xff0c;下一首歌曲。 实现 总体规划 在MainActivity中&a…

索尼音乐应用android,Sony Music Center

Sony Music Center是全新的索尼音乐中心也是原来的songpal应用&#xff0c;作为sony手机上面的专业播放器的软件&#xff0c;它能够为用户播放各种音乐上面的内容&#xff0c;它可以直接的为用户解析各种音乐的内容&#xff0c;让用户能够随时的在手机上面收听到自己所喜欢的无…

MusicLibrary:一个丰富的音乐播放封装库

code小生,一个专注 Android 领域的技术分享平台 作者&#xff1a;lizixian18链接&#xff1a;https://github.com/lizixian18/MusicLibrary声明&#xff1a;本文是 lizixian18 投稿,转载等请联系作者获得授权。 MusicLibrary 一个丰富的音乐播放封装库&#xff0c;针对快速集成…

MusicBox

MusicBox 编写音乐盒代码&#xff0c;并添加音乐播放的 上一首 和 下一首 控制。 1.添加所需的图片以及音乐文件&#xff1b; 2.编写xml文件&#xff0c;上一首、下一首、暂停、播放按钮以及歌曲的名字和作者 <?xml version"1.0" encoding"utf-8"?&…

Musicplayer

Musicplayer Python 音乐播放器 功能&#xff1a; 首先可以实现本地音乐的播放&#xff0c;能够打开电脑端的文件&#xff0c;文件中进行多选&#xff0c;实现暂停、上一曲、下一曲的功能。在此基础上&#xff0c;完成随机播放列表和网络端下载的功能。 设计方法&#xff1a; 本…

MusicBox(音乐播放器)

这两天做了一个小型的音乐播放器&#xff0c;基本功能都已实现&#xff0c;同时也让我对CSliderCtrl&#xff0c;MCI_OPEN_PARMS以及控件之间的消息映射&#xff0c;数据转换等有了更深入的理解&#xff0c;下面是自己编程的详细过程&#xff1a; 1 首先将控件的位置都摆好&a…

musicbox使用方法_使用Pi MusicBox收听流音乐

musicbox使用方法 在用Raspberry Pi 控制圣诞树灯的项目完成之后&#xff0c;下一个项目是什么&#xff1f; 我最终开始尝试使用Pi Musicbox进行修补&#xff0c;这是Mopidy的Raspbian的一种版本 &#xff0c;它允许用户在“无头”的Raspberry Pi上播放各种流媒体服务&#xff…

推荐一个高大上的网易云音乐命令行播放工具:musicbox

网易云音乐上有很多适合程序猿的歌单&#xff0c;但是今天文章介绍的不是这些适合程序员工作时听的歌&#xff0c;而是一个用Python开发的开源播放器&#xff0c;专门适用于网易云音乐的播放。这个播放器的名称为MusicBox, 特色是用命令行版本执行音乐的播放。 github地址&…

移动开发技术(三)MusicBox

实验要求 使用广播机制&#xff0c;编写音乐盒代码&#xff0c;添加音乐播放的播放、暂停、停止、上一首和下一首控制 实验步骤 一、布局设置 添加一个LinearLayout&#xff0c;选择垂直分布。在里面添加两个LinearLayout&#xff1a; ①music_show&#xff1a;用于展示图片…

Gap Statistic算法详解

在Kmean算法确定K值的问题里&#xff0c;可以使用手肘法&#xff0c;也可以用Gap statistic 算法。手肘法的缺点是不够自动化&#xff0c;而Gap不再需要“手肘法”式的肉眼判断&#xff0c;而只需要找出使Gap Statistic最大的K值即可。因此&#xff0c;Gap和适用于批量化作业。…

IDEA 统计插件Statistic:查看你的代码量

最近接触了一款IDEA统计代码量的插件Statistic&#xff0c;简介一下Statistic的安装。 一、插件下载安装 File->Settings->Plugins&#xff0c;输入Statistic&#xff0c;点击install,安装完后选择重启idea。 二、运行使用 重启完后&#xff0c;点击refesh即可看到代码量…

idea中安装统计代码statistic插件

百度一圈都是直接在idea中安装statistic插件&#xff0c;就不再重复 1.从官网下载&#xff1a;http://plugins.jetbrains.com/plugin/4509-statistic/versions 插件包 到本地 2.选择从本地安装 3. 4.重启idea 5.工具栏

探索 t Statistic的稳健性

探索 t Statistic的稳健性 探索t-statistic 的稳健性 假设有2组数据&#xff0c;x1,…,xm; y1,…,yn。 t-test的假设为两组数据的平均值无差异 即&#xff1a; 令X和Sx为为x数组的平均值和标准差&#xff0c;Y和Sy为y数组的平均值和标准差&#xff1b;则H0的判别式为 在H0…

AS 使用Statistic插件统计代码行数

1.下载插件及安装 点击File → Setting→ Plugins&#xff0c;搜索Statistic插件&#xff0c;点击install按钮安装插件。 2.插件使用 安装成功后重启AS&#xff0c;在View→Tool Windows→Statistic&#xff0c;选择后AS底部会显示Statistic按钮&#xff0c; 点击Refresh按钮…

IDEA 统计Statistic插件下载地址

IDEA 统计Statistic插件安装地址 https://plugins.jetbrains.com/plugin/4509-statistic/versions

idea-统计代码行数Statistic

idea统计代码行数可以用到插件&#xff1a;Statistic。 步骤&#xff1a; File→Settings进入Plugins点击Marketplace搜索Statistic 安装蓝框标出的插件 重启idea后就可以看到效果了&#xff08;图是拿的别人的&#xff0c;基本就是这效果&#xff09;如果没有下边的stat…

IDEA代码统计插件Statistic-统计项目代码文件数及代码行数

今天被问到项目的代码量及代码行数&#xff0c;由于项目代码量还挺多&#xff0c;第一时间想到idea有没有插件可以统计&#xff0c;经过搜索&#xff0c;还真有&#xff0c;当然也可以自己写代码实现。 以下介绍Statistic的安装及使用。 1、在IDEA左上角点击File->Setting…

idea中代码统计工具Statistic的配置与使用

idea中代码统计工具Statistic的配置与使用 有的同学在idea中下载了statistic的插件但是就是没看到这个插件的标志&#xff0c;这是因为插件对应了不同的版本,需要下载对应的版本&#xff1a;https://plugins.jetbrains.com/plugin/4509-statistic/versions 下载完成之后File—…

Intellij idea使用Statistic统计代码行数的方法

一、安装Statistic 1、打开IDEA 2、打开settings进行设置 3、选择plugins&#xff0c;搜索Statistic并安装 4、下载完成之后&#xff0c;重启IDEA&#xff0c;此时Statistic就安装好了 二、使用Statistic 1、安装好Statistic之后我们可以通过以下步骤 将Statistic插件的控制台展…