HTML5中audio标签的使用

html-css029

HTML5中audio标签的使用,第1张

HTML5 中的新元素标签

src:音频文件路径。

autobuffer:设置是否在页面加载时自动缓冲音频。

autoplay:设置音频是否自动播放。

loop:设置音频是否要循环播放。

controls:属性供添加播放、暂停和音量控件。

这些属性和<video>元素标签的属性很类似

常用的控制函数:

1.load():加载音频、视频软件

2.play():加载并播放音频、视频文件或重新播放暂停的的音频、视频

3.pause():暂停出于播放状态的音频、视频文件

4.canPlayType(obj):测试是否支持给定的Mini类型的文件

可脚本控制的属性值:

1.autoplay:自动播放已经加载的的媒体文件

2.loop为true:的时候则设定为自动播放

3.currentTime:以s为单位返回从开始播放到目前所花的时间

4.controls:显示或者隐藏用户控制界面

5.volume:音量值,从0.0至1.0之间

6.muted:设置是否静音

7.autobuffer:是否进行缓冲加载

audioTracks返回表示可用音频轨道的 AudioTrackList 对象。

autoplay 设置或返回是否在就绪(加载完成)后随即播放音频。

buffered 返回表示音频已缓冲部分的 TimeRanges 对象。

controller 返回表示音频当前媒体控制器的 MediaController 对象。

controls 设置或返回音频是否应该显示控件(比如播放/暂停等)。

crossOrigin设置或返回音频的 CORS 设置。

currentSrc 返回当前音频的 URL。

currentTime设置或返回音频中的当前播放位置(以秒计)。

defaultMuted 设置或返回音频默认是否静音。

defaultPlaybackRate 设置或返回音频的默认播放速度。

duration返回音频的长度(以秒计)。

ended 返回音频的播放是否已结束。

error 返回表示音频错误状态的 MediaError 对象。

loop设置或返回音频是否应在结束时再次播放。

mediaGroup 设置或返回音频所属媒介组合的名称。

muted 设置或返回是否关闭声音。

networkState返回音频的当前网络状态。

paused 设置或返回音频是否暂停。

playbackRate设置或返回音频播放的速度。

played 返回表示音频已播放部分的 TimeRanges 对象。

preload 设置或返回音频的 preload 属性的值。

readyState 返回音频当前的就绪状态。

seekable返回表示音频可寻址部分的 TimeRanges 对象。

seeking 返回用户当前是否正在音频中进行查找。

src 设置或返回音频的 src 属性的值。

textTracks 返回表示可用文本轨道的 TextTrackList 对象。

volume 设置或返回音频的音量。

方法 描述

addTextTrack() 向音频添加新的文本轨道。

canPlayType() 检查浏览器是否能够播放指定的音频类型。

fastSeek() 在音频播放器中指定播放时间。

getStartDate()返回新的 Date 对象,表示当前时间线偏移量。

load() 重新加载音频元素。

play()开始播放音频。

pause() 暂停当前播放的音频。

src 音乐资源的路径

autoplay 播放

controls 控制面板

loop 循环播放

muted 初始静音

audio支持的音乐格式有mp3 ogg wav

<audio src="../source/菊花爆满山.mp3" autoplay="autoplay" controls="controls" loop="loop" muted="muted">你的浏览器太辣鸡了,不支持audio标签</audio>

选择不同的文件格式

source标签为audio提供音乐资源,并且可以指定多种类型的音乐资源

<audio autoplay="autoplay">

<source src="../source/菊花爆满山.mp3" type="audio/mp3">

<audio autoplay="autoplay">

<source src="../source/菊花爆满山.mp3" type="audio/ogg">

</audio>

video标签支持的文件类型 mp4 ogg webm

width height 是设置播放界面大小的,通常情况下只会指定一方的值,然后等比缩放

poster,当视频链接出现问题,或者网络延迟加载慢时,显示的一张占位图片

<video autoplay="autoplay" controls="controls" loop="loop" muted="muted" width="200" height="500" poster="../source/haha.jpg">

<source src="../source/diqiu.mp4" type="video/mp4">

你的浏览器太拉基了,不支持video标签

</video>

video::-webkit-media-controls-enclosure {

display: none !important

}

var    myVideo=document.getElementById("video")

var    btn=document.getElementById("button")

btn[0].click=function(){

myVideo.muted=true(是否静音:是)

}

btn[1].click=function(){

myVideo.muted=false(是否静音:否)

}

btn[2].click=function(){

myVideo.play()(播放)

}

btn[3].click=function(){

myVideo.pause()(停止播放)

}

btn[4].click=function(){

myVideo.webkitrequestFullscreen()(全屏显示)

}

(1)、需要获取视频的总时长(duration)赋值给进度条的最大值,progress.max=video.duration

(2)、需要获取当前视频播放的当前时间位置(currentTime)赋值给当前进度条的长度,progress.value=video.currentTime

然后在视频播放的同时,要保证进度条的值能够及时获取到视频的时长和当前播放时间位置。

需要开一个定时器setInterval(pro,100):就是说在1毫秒获取一次视频的数值赋值给progress进度条,这样就能保证及时性。

这样进度条就能和视频的准确的同步了。

首先需要获取到range的value值,赋给视频的音量上去,才能控制视频的音量大小,

<input   type="range"   min="0"   value="50"    max="100"    id="range"/>

var ran=document.getElementById("range")

获取range.value,

赋值给video的音频属性:video.volume=range.value/100

这时候就能实现简单拖动range而控制视频的音量了。

然后还需要进去前面的声音关闭判断,两则是独立的事件,所以,需要在拖动事件中进行判断是否是静音muted,然后在进行muted设置为false。