百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 软件资讯 > 正文

一个漂亮的开源HTML5音乐播放器——APlayer

ninehua 2024-11-27 18:30 11 浏览

介绍

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小型音乐播放器,可以将它嵌入到自己的网页中!

相关推荐

Java 反编译工具的使用与对比分析

前言Java反编译,一听可能觉得高深莫测,其实反编译并不是什么特别高级的操作,Java对于Class字节码文件的生成有着严格的要求,如果你非常熟悉Java虚拟机规范,了解Class字节...

Java代码混淆工具Allatori混淆jar可执行包的使用方法

Allatori简介Allatori是第二代Java混淆器,可为您的知识产权提供全方位的保护。Allatori不只是混淆,它还最小化应用程序大小,并提高速度,同时除了您和您?的团队之外,任何人...

window下将spring boot-jar添加到服务中,实现自动启动

1、下载winsw:https://github.com/winsw/winsw/releases...

idea maven 依赖包报红

有不少小伙伴遇到这个问题问我该怎么破,其实这个问题的答案在网上已经烂大街了,随便一查就一堆(其中不少是复制粘贴的且抄都抄不全,令人汗颜!),在此我记录下解决方案。解决方案如下:maven的settin...

使用 XJar 对程序 jar 包加密,防止被破解

1.新建一个空的maven项目,并在pom文件中添加:<dependencies><dependency><groupId>com.github.c...

maven 处理多版本 jar包依赖冲突

一。参考文档https://maven.apache.org/plugins/maven-dependency-plugin/examples/resolving-conflicts-using-th...

IntelliJ Idea下jar包引入失败的处理方法

IntelliJIdea下jar包引入失败的处理方法标签:IntelliJIDEAIDEA导入新项目或者更新的时候,显示“Cannotresolvesymbol'XXX‘’”,之前有...

将本地jar 批量发布到 Nexus 私服

前言在日常开发过程中,我们有遇到将项目依赖通过mvndeploy发布到自己的公司的私服,以便其他人/环境统一下载入口。但是也有一些特殊情况,比如只能拿到第三方(或甲方)的依赖jar,并不能拿到...

如何优雅替换第三方依赖中的类?

在项目中需要依赖其他第三方的jar包,但有时我们需要扩展第三方jar的功能,或者修复依赖中已知还未修复的bug,但碰到过很多种情况,第三方类库中并没有提供对应的扩展点导致无法优雅的使用继承等方法对代码...

Jarboot-一个功能强大易用的Java进程启动器

什么是JarbootJarboot是一个功能强大易用的Java进程启动器,使用jarboot可以方便的启动一批的Java进程,支持按照依赖的优先级顺序启动、进程守护、文件监控重启、进程在线调试。...

IDEA 这么设置 Maven,再也不用担心依赖下载失败了

Hello,大家好,我是楼下小黑哥。B站视频版本...

一个小技巧,Maven 打 Jar 包体积缩小100倍

大家好,我是互联网架构小马哥!为了大家能够从从项目集成的苦力活中解放出来,最近这一周,整理了两篇关于Jenkins构建、部署的文章,感兴趣的朋友可以看看:【...

还在用nohup启动java jar服务?试试强大的systemctl吧

nohup直译过来就是不挂断,要运行后台中的nohup命令,添加&(表示“and”的符号)到命令的尾部,使用nohup启动的例子:nohup/usr/bin/java-jar/dat...

推荐一款产品-防止JAVA代码反编译

VirboxProtector是深思数盾科技股份有限公司经过多年技术深耕开发的一款高强度虚拟机外壳。VirboxProtector集加密、压缩、混淆虚拟化等于一身。支持的操作系统包括Windo...

如何使用Axure制作交互文档?

编辑导语:Axure作为交互文档有着可交互、兼容性好的优势,本文作者结合亲身的实践操作,为我们分享了如何使用Axure制作交互文档。01Axure软件介绍这次团队决定使用的是Axure9版...