audio音乐播放
1.audio标签
<audio @play="ready" @error="error" ref="audio" :src="currentSong.url"></audio>
2.中间圆cd和播放/暂停按钮动画
playIcon(){
return this.playing ? ' iconfont icon-pause-' : 'iconfont icon-bofang1'
},
cdCls(){
return this.playing ? 'play' :'play pause'
}
3.通过mutations来设置播放/暂停----上一首/下一首-----min/normal播放
methods:{
...mapMutations({
setFullScreen:'SET_FULL_SCREEN',
setPlayingState:'SET_PLAYING_STATE',
setCurrentIndex:'SET_CURRENT_INDEX',
}),
mini(){//当电机及此按钮的时候,将全屏显示转换为“迷你播放”
this.setFullScreen(false)
},
4.监听currentsong的变化,当currentsong发生变化的时候,让歌曲播放;
currentSong(){//一点击歌曲进来的时候是播放状态
this.$nextTick(()=>{
this.$refs.audio.play()
})
},
5.监听playing的播放状态
playing(newPlaying){//监听是否在播放---切换播放暂停状态
console.log(newPlaying)
const audio = this.$refs.audio
newPlaying ? audio.play() : audio.pause()
}
6.上一曲/下一曲切换:
prev(){//点击上一首/下一首切换其实就是切换歌曲的播放索引,让其+1/-1;audio由一个ready属性,来确认是否准备好播放,来阻止用户的连续多次点击;
if (!this.songReady) {
return
}
let index = this.currentIndex -1
if(index ===1){
index = this.playlist.length -1
}
this.setCurrentIndex(index)
if(!this.playing){
this.togglePlaying()
}
},
next(){
if (!this.songReady) {
return
}
let index = this.currentIndex + 1
if (index === this.playlist.length){
index = 0
}
this.setCurrentIndex(index)
if(!this.playing){//当暂停时候点击播放的情况
this.togglePlaying()
}
},
ready(){
this.songReady = true
},
audio音乐播放的更多相关文章
- html5,audio音乐播放器
最终,做了自己原来一直想要实现的事儿.得出的结果是,有些事儿一旦開始做了,那么它就并非非常难. 如今的我,正听着自己的播放器放出的<光辉岁月>写这篇周六清晨的博文.写的不是非常好.但也请各 ...
- 在iOS微信浏览器中自动播放HTML5 audio(音乐)的2种正确方式
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- HTML5项目笔记4:使用Audio API设计绚丽的HTML5音乐播放器
HTML5 有两个很炫的元素,就是Audio和 Video,可以用他们在页面上创建音频播放器和视频播放器,制作一些效果很不错的应用. 无论是视屏还是音频,都是一个容器文件,包含了一些音频轨道,视频轨道 ...
- 使用Audio API设计绚丽的HTML5音乐播放器
HTML5 有两个很炫的元素,就是Audio和 Video,可以用他们在页面上创建音频播放器和视频播放器,制作一些效果很不错的应用. 无论是视屏还是音频,都是一个容器文件,包含了一些音频轨道,视频轨道 ...
- 用<audio>标签打造一个属于自己的HTML5音乐播放器
上一章节,我们刚刚讲了<video>标签,今晚,我们讲的是<audio>标签,这两个东东除了表示的内容不一样以外,其他的特性相似的地方真的太多了,属性和用法几乎一样,也就说,如 ...
- 自定义css样式结合js控制audio做音乐播放器
最近工作需求需要播放预览一些音乐资源,所以自己写了个控制audio的音乐播放器. 实现的原理主要是通过js调整audio的对象属性及对象方法来进行控制: 1.通过play().pause()来控制音乐 ...
- Audio 标签的使用和自己封装一个强大的React音乐播放器
原文地址:https://www.dodoblog.cn/blog?id=5be84d5c70b2b617f27a4610 这篇文章主要介绍一下博客里的这个音乐播放器是怎么写的 为了更好的表达高深的东 ...
- html - html5 audio 音乐自动播放,循环播放等
转自:http://blog.csdn.net/u012246458/article/details/50618759 audio播放音乐 <audio id="audio" ...
- 【大结局】《从案例中学习JavaScript》之酷炫音乐播放器(四)
这是之前写的用H5制作的音乐播放器,前三节其实已经做得差不多了,音轨的制作原理已经在上一节说明,不过一直还没有和音乐对接. 本章作为该系列的一个完结篇,我会专门把动态音轨的实现代码贴出来,demo地址 ...
随机推荐
- LATeX 插入脚注
LATeX 插入脚注: 使用 \footnote{...注释内容} 命令: To maximize the lower-bound $ we employ conjugate gradient me ...
- maven groupID 和 ArtifactID的区别与作用
GroupID是项目组织唯一的标识符,实际对应JAVA的包的结构,是main目录里java的目录结构. ArtifactID就是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称.一般Gro ...
- HDU 4576 Robot (概率 & 期望)
Robot Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 102400/102400 K (Java/Others)Total Sub ...
- 一张图告诉你:Android系统哪代强?
一张图告诉你:Android系统哪代强? 新浪科技 王上 谷歌发布Android 1.5 的时候,开始以甜点命名,作为每个版本代表的甜点的尺寸越变越大.谷歌在2014年10月中旬发布了Android ...
- linux系统yum方式安装htop命令[转]
CentOS下为yum加入rpmForge源,使用yum安装htop 为CentOS增加rpmForge软件源 wget http://pkgs.repoforge.org/rpmforge-rele ...
- MySQL-通用查询日志
记录了所有对mysql数据库服务器请求的信息,无论这些请求是否得到了正确的执行. mysqld向通用查询日志中写信息是按照收到客户端的命令的顺序进行记录,而不是按照执行的顺序. server重 ...
- Percona XtraBackup介绍
Percona XtraBackup开源的.免费的mysql热备软件,可以执行无阻塞备份InnoDB和XtraDB数据库. Percona XtraBackup有以下优点: ·备份快速.可靠 ·备份期 ...
- Java实现打印功能
用java实现打印,java.awt中提供了一些打印的API,要实现打印,首先要获得打印对象,然后继承Printable实现接口方法print,以便打印机进行打印,最后用Graphics2D直接输出直 ...
- java方法的继承,覆盖与重载
java中的继承使用extends关键字,在子类继承了父类之后将会获得父类的全部属性与方法(父类的构造器除外).如果在定义java类时没有显示定义她的父类,那么这个类默认将扩展java.lang.Ob ...
- win 7 下合并多个表格
首先我这里从服务器上下载了一大堆的表格 分类放好之后 这里我们需要把每一类的表格合并成一张表格 这里我们使用win 7下的copy的命令 这里我的表格的格式是csv 使用cmd 我们先cd到你的表格的 ...