一个漂亮的开源HTML5音乐播放器——APlayer
zhezhongyun 2024-12-14 16:07 28 浏览
介绍
APlayer是一个简约且漂亮的HTML5音乐播放器,支持多种模式,包括播放列表模式、吸底模式
、迷你模式、MSE模式、HLS模式。
Github
https://github.com/DIYgod/APlayer
安装
使用 npm:
npm install aplayer --save
使用 Yarn:
yarn add aplayer
使用
<link rel="stylesheet" href="APlayer.min.css">
<div id="aplayer"></div>
<script src="APlayer.min.js"></script>
const ap = new APlayer({
container: document.getElementById('aplayer'),
audio: [{
name: 'name',
artist: 'artist',
url: 'url.mp3',
cover: 'cover.jpg'
}]
});
或者使用模块化方式
import 'APlayer/dist/APlayer.min.css';
import APlayer from 'APlayer';
const ap = new APlayer(options);
API
- APlayer.version: 静态属性, 返回 APlayer 的版本号
- ap.play(): 播放音频
- ap.pause(): 暂停音频
- ap.seek(time: number): 跳转到特定时间,时间的单位为秒
- ap.toggle(): 切换播放和暂停
- ap.on(event: string, handler: function): 绑定音频和播放器事件,详情
- ap.volume(percentage: number, nostorage: boolean): 设置音频音量
- ap.theme(color: string, index: number): 设置播放器主题色, index 默认为当前音频的 index
- ap.setMode(mode: string): 设置播放器模式,mode 取值应为 'mini' 或 'normal'
- ap.mode: 返回播放器当前模式,'mini' 或 'normal'
- ap.notice(text: string, time: number, opacity: number): 显示通知,时间的单位为毫秒,默认时间 2000 毫秒,默认透明度 0.8,设置时间为 0 可以取消通知自动隐藏
- ap.skipBack(): 切换到上一首音频
- ap.skipForward(): 切换到下一首音频
- ap.destroy(): 销毁播放器
- ap.lrc-ap.lrc.show(): 显示歌词ap.lrc.hide(): 隐藏歌词ap.lrc.toggle(): 显示/隐藏歌词
- ap.list-ap.list.show(): 显示播放列表ap.list.hide(): 隐藏播放列表ap.list.toggle(): 显示/隐藏播放列表ap.list.add(audios: array | object): 添加一个或几个新音频到播放列表ap.list.add([{ name: 'name', artist: 'artist', url: 'url.mp3', cover: 'cover.jpg', lrc: 'lrc.lrc', theme: '#ebd0c2' }]); ap.list.remove(index: number): 移除播放列表中的一个音频ap.list.remove(1); ap.list.switch(): 切换到播放列表里的其他音频ap.list.switch(1); ap.list.clear(): 清空播放列表
- ap.audio: 原生 audioap.audio.currentTime: 返回音频当前播放时间ap.audio.duration: 返回音频总时间ap.audio.paused: 返回音频是否暂停支持大多数原生audio接口
事件绑定
ap.on(event, handler)
ap.on('ended', function () {
console.log('player ended');
});
音频事件
- abort
- canplay
- canplaythrough
- durationchange
- emptied
- ended
- error
- loadeddata
- loadedmetadata
- loadstart
- mozaudioavailable
- pause
- play
- playing
- progress
- ratechange
- seeked
- seeking
- stalled
- suspend
- timeupdate
- volumechange
- waiting
播放器事件
- listshow
- listhide
- listadd
- listremove
- listswitch
- listclear
- noticeshow
- noticehide
- destroy
- lrcshow
- lrchide
总结
APlayer是一个不错的HTML5小型音乐播放器,可以将它嵌入到自己的网页中!
相关推荐
- 快速掌握Kafka系列《三》配置项总结
-
往期系列文章:1.快速掌握Kafka系列《一》基本概念入门2.快速掌握Kafka系列《二》常用操作命令汇总目录一、前言二、broker配置2.1三个基本配置2.2其它配置2.3...
- 智能私有知识库RAG企业级解决方案:开源工具AnythingLLM实操指南
-
点击上方“顶层架构领域”,关注精彩与你分享在数据安全和隐私保护日益受到重视的背景下,私有化部署大模型的需求日益增长。MintplexLabsInc.推出的开源项目AnythingLLM,为个人...
- Zabbix随笔:更换自定义logo及内容
-
喝杯,安静坐下写个文章。之前关于Zabbix更换logo这事其实比较复杂,随着5.4版本不断迭代,Zabbix官方也是提供了相关方法,相比之前确实容易了不少,但依然是通过命令行来实现。正文...
- Windows系统CMD-DOS命令大全及CMD命令与运行命令的区别
-
Windows系统CMD-DOS命令和开始→运行(win+R)命令的区别首先要知道运行窗口实际是运行系统文件夹下的文件。这样就有区别了,cmd分为外部命令和内部命令。内部命令是cmd自带的命令,例如...
- MySQL 5.7 学习: 配置参数(mysql 配置参数调优)
-
背景:继上次介绍初识MySQL5.6新功能、参数完之后,刚好MySQL5.7又GA了,在官方测试里看到,MySQL5.7在功能、性能、可用性、安全和监控上又提升了很高。现在看看和MySQL5...
- Windows命令行command的Shell命令详细解析和语法
-
CMD命令大全及详细解释和语法CMD命令大全及详细解释和语法MicrosoftWindowsXP[版本5.1.2600]有关某个命令的详细信息,请键入HELP命令名ASSOC显示或修改文...
- JShaman本地部署“JS混淆加密”性能测试
-
JShaman是知名JS混淆加密平台,支持本地化部署。本文简单测试本地部署JShaman的JS混淆加密性能。测试JS文件:40.1cfc40763dac0fe9c500.js大小:2.18KBJSha...
- 那些年使用Hive踩过的坑(hive.one)
-
1.概述这个标题也是用血的教训换来的,希望对刚进入hive圈的童鞋和正在hive圈爬坑的童鞋有所帮助。打算分以下几个部分去描述:Hive的结构Hive的基本操作HiveSelectHiveJoin...
- 「技术分享」音乐-CD播放介绍(cd播放是什么意思)
-
音乐(deepin-music)是deepin自研的一款音频播放软件,能广泛支持播放本地或外部媒介中的音频文件,其中就包括对CDDA(CompactDisc-DigitalAudio)标准的支持。...
- 超级全的宝马模块缩写、常用缩写、中英对照,值得收藏
-
AAustauschbar可替换通过零件号码下一行ABAirbag安全气囊ABEAllgemeineBetriebserlaubnis普通操作许可证ABSAnti-Blockie...
- 深入探讨HBASE(深入探讨石菖蒲的功效与作用)
-
HBASE基础1.HBase简介HBase是一个高可靠、高性能、面向列的,主要用于海量结构化和半结构化数据存储的分布式key-value存储系统。它基于GoogleBigtable开源实现,但二者...
- 小容量硬盘福音:Win10新增Compact系统压缩功能
-
IT之家讯好消息,在Win10中,微软新添加了Compact系统压缩功能,可以对所有的系统文件进行压缩,它有点类似于之前Win8.1(withupdate1)中的wimboot功能,不过,Com...
- 实现前端传递参数进行加密,Java后端接收数据解密
-
下面为你介绍前端传递参数加密、Java后端接收数据解密的实现方法,这里以常见的AES对称加密算法为例。前端加密(使用JavaScript和CryptoJS库)CryptoJS是一个强大...
- CSS面试题:CSS布局的问题面试题(div css面试题)
-
1.实现两栏布局的方式你知道那些方法?(其实就是我们经常在开发中使用到的'左边宽度固定右边宽度自适应')那我们应该如何回答呢?1.1下面是回答该问题的一种思路:1.实现两栏...
- CSS calc使用(css中calc是什么意思)
-
calc使用用于动态计算长度值。需要注意的是,+、-运算符前后都需要保留一个空格,例如:width:calc(100%-10px);任何长度值都可以使用calc()函数进行计算;calc(...
- 一周热门
- 最近发表
- 标签列表
-
- HTML 教程 (33)
- HTML 简介 (35)
- HTML 实例/测验 (32)
- HTML 测验 (32)
- HTML 参考手册 (28)
- JavaScript 和 HTML DOM 参考手册 (32)
- HTML 拓展阅读 (30)
- HTML中如何键入空格 (27)
- HTML常用标签 (29)
- HTML文本框样式 (31)
- HTML滚动条样式 (34)
- HTML5 浏览器支持 (33)
- HTML5 新元素 (33)
- HTML5 WebSocket (30)
- HTML5 代码规范 (32)
- HTML5 标签 (717)
- HTML5 标签 (已废弃) (75)
- HTML5电子书 (32)
- HTML5开发工具 (34)
- HTML5小游戏源码 (34)
- HTML5模板下载 (30)
- HTTP 状态消息 (33)
- HTTP 方法:GET 对比 POST (33)
- 键盘快捷键 (35)
- 标签 (226)