本文摘自PHP中文网,作者黄舟,侵删。
本篇文章主要介绍了H5新属性audio音频和video视频的控制详解(推荐),具有一定的参考价值,有兴趣的同学可以了解一下。本文讲诉了H5新属性audio音频和video视频的控制,具体如下:
1.音频(audio)
1 2 3 | <audio controls= "controls" >
<source src= "这里面放入音频文件路径" ></source>
</audio>
|
2.视频(video)
1 2 3 4 5 6 7 8 | <video controls= "controls" loop= "loop" autoplay= "autoplay" id= "video" >
<source src= "这里面放入视频文件路径" ></source>
</video>
<button>静音</button>
<button>打开声音</button>
<button>播放</button>
<button>停止播放</button>
<button>全屏</button>
|
下面是对于视频文件的控制;
javascript引出。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <script>
var myVideo=document.getElementById( "video" );
var btn=document.getElementById( "button" );
btn[0].click= function (){
myVideo.muted= true ;(是否静音:是)
}
btn[1].click= function (){
myVideo.muted= true ;(是否静音:否)
}
btn[2].click= function (){
myVideo.play();(播放)
}
btn[3].click= function (){
myVideo.pause();(停止播放)
}
btn[4].click= function (){
myVideo.webkitrequestFullscreen();(全屏显示)
}
</script>
|
3.如何设置进度条和视频的播放时长
同步进行。
如图所示:

这里说一下,首先
(1)、需要获取视频的总时长(duration)赋值给进度条的最大值,progress.max=video.duration;
(2)、需要获取当前视频播放的当前时间位置(currentTime)赋值给当前进度条的长度,progress.value=video.currentTime;
然后在视频播放的同时,要保证进度条的值能够及时获取到视频的时长和当前播放时间位置。
需要开一个定时器setInterval(pro,100);:就是说在1毫秒获取一次视频的数值赋值给progress进度条,这样就能保证及时性。
这样进度条就能和视频的准确的同步了。
4.如何用表单元素 range属性控制视频的音量大小。
1、首先需要获取到range的value值,赋给视频的音量上去,才能控制视频的音量大小,
1 2 | <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。

最终实现的代码如下;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | <!DOCTYPE html>
< html >
< body >
< video id = "video1" controls = "controls" width = "400px" height = "400px" >
< source src = "img/1.mp4" >
</ video >
< p >
< button onclick = "enableMute()" type = "button" >关闭声音</ button >
< button onclick = "disableMute()" type = "button" >打开声音</ button >
< button onclick = "playVid()" type = "button" >播放视频</ button >
< button onclick = "pauseVid()" type = "button" >暂停视频</ button >
< button onclick = "showFull()" type = "button" >全屏</ button >< br />
< span >进度条:</ span >
< progress value = "0" max = "0" id = "pro" ></ progress >
< span >音量:</ span >
< input type = "range" min = "0" max = "100" value = "50" onchange = "setvalue()" id = "ran" />
</ p >
< script >
var btn=document.getElementsByTagName("button");
var myvideo=document.getElementById("video1");
var pro=document.getElementById("pro");
var ran=document.getElementById("ran");
//关闭声音
function enableMute(){
myvideo.muted=true;
btn[0].disabled=true;
btn[1].disabled=false;
}
//打开声音
function disableMute(){
myvideo.muted=false;
btn[0].disabled=false;
btn[1].disabled=true;
}
//播放视频
function playVid(){
myvideo.play();
setInterval(pro1,1000);
}
//暂停视频
function pauseVid(){
myvideo.pause();
}
//全屏
function showFull(){
myvideo.webkitrequestFullscreen();
}
//进度条展示
function pro1(){
pro.max=myvideo.duration;
pro.value=myvideo.currentTime;
}
//拖动range进行调音量大小
function setvalue(){
myvideo.volume=ran.value/100;
myvideo.muted=false;
}
</ script >
</ body >
</ html >
|
【相关推荐】
1. 详解html5的video标签测试应用
2. html 5中使用video元素制作一个影片播放器
3. 分享一个video标签无法播放mp4的问题以及解决方案
4. H5 video标签只能放声音不能放视频的解决办法
5. IIS的MIME未注册MP4类型,导致无法识别vidoe标签的解决办法
以上就是详解H5新属性audio音频和video视频的控制代码实例的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
html5新增加的标签有哪些
html5中关于canvas画图之画圆形的实例介绍
html5 canvas学习的实例介绍
html5让图片转圈的动画效果的实现方法介绍
html5 video标签的属性、方法和事件汇总介绍
什么是websocket?解析h5中的websocket
html5 video如何实现实时监测当前播放时间(代码)
带你了解什么是html5?
html5返回音频/视频是否已结束的属性ended
html5中关于新增的几个背景属性和文本属性介绍
更多相关阅读请进入《h5》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » 详解H5新属性audio音频和video视频的控制代码实例