be七365

在VUE中播放音频(audio介绍与使用)

在VUE中播放音频(audio介绍与使用)

一、audio标签简介

在HTML中我们可以使用audio标签播放音频,就像这样:

属性值描述autoplayautoplay如果出现该属性,则音频在就绪后马上播放。controlscontrols如果出现该属性,则向用户显示音频控件(比如播放/暂停按钮)。looploop如果出现该属性,则每当音频结束时重新开始播放。mutedmuted如果出现该属性,则音频输出为静音。preloadauto metadata none规定当网页加载时,音频是否默认被加载以及如何被加载。srcURL规定音频文件的 URL。

上表抄自菜鸟教程,我们可以在audio标签中加入相应的属性来达到对应的效果。

同时,在HTML5中新增了audio对象,代表audio标签,让我们可以在JS中去控制audio。

它的属性和方法很多,见下表(同样式抄自菜鸟教程)

表1:audio属性

属性描述audioTracks返回表示可用音频轨道的 AudioTrackList 对象autoplay设置或返回是否在加载完成后随即播放音频buffered返回表示音频已缓冲部分的 TimeRanges 对象controller返回表示音频当前媒体控制器的 MediaController 对象controls设置或返回音频是否显示控件(比如播放/暂停等)crossOrigin设置或返回音频的 CORS 设置currentSrc回当前音频的 URLcurrentTime设置或返回音频中的当前播放位置(以秒计)defaultMuted设置或返回音频默认是否静音defaultPlaybackRate设置或返回音频的默认播放速度duration返回当前音频的长度(以秒计)ended返回音频的播放是否已结束error返回表示音频错误状态的 MediaError 对象loop设置或返回音频是否应在结束时重新播放mediaGroup设置或返回音频所属的组合(用于连接多个音频元素)muted设置或返回音频是否静音networkState返回音频的当前网络状态paused设置或返回音频是否暂停playbackRate设置或返回音频播放的速度played返回表示音频已播放部分的 TimeRanges 对象preload设置或返回音频是否应该在页面加载后进行加载readyState返回音频当前的就绪状态seekable返回表示音频可寻址部分的 TimeRanges 对象seeking返回用户是否正在音频中进行查找src设置或返回音频元素的当前来源textTracks返回表示可用文本轨道的 TextTrackList 对象volume设置或返回音频的音量

表2:audio方法

方法描述addTextTrack()在音频中添加一个新的文本轨道canPlayType()检查浏览器是否可以播放指定的音频类型fastSeek()在音频播放器中指定播放时间。getStartDate()返回一个新的Date对象,表示当前时间轴偏移量load()重新加载音频元素play()开始播放音频pause()暂停当前播放的音频

使用也很简单:

1.获取dom

2.操作

二、在VUE2中播放音频

1.直接使用AUDIO标签进行音频播放

2.使用JS播放音频,获取dom,使用play()

三、在vue3中播放音频

在vue3中加入了setup()所以获取虚拟dom稍稍有所不同。

四、在uniapp中播放音频

const innerAudioContext = uni.createInnerAudioContext();

innerAudioContext.src = '音频地址';

// 关闭自动播放

innerAudioContext.autoplay = false;

const Click= () => {

innerAudioContext.stop()

innerAudioContext.play()

}

相关推荐