H5新属性audio音频和video视频的控制详解(推荐)


Posted in HTML / CSS onDecember 09, 2016

本文讲诉了H5新属性audio音频和video视频的控制,具体如下:

 1.音频(audio)

<audio controls="controls">
<source src="这里面放入音频文件路径"></source>
</audio>

2.视频(video)

<video controls="controls" loop="loop" autoplay="autoplay" id="video">
<source src="这里面放入视频文件路径"></source>
</video>
<button>静音</button>
 <button>打开声音</button>
 <button>播放</button>
 <button>停止播放</button>
 <button>全屏</button>

下面是对于视频文件的控制;

javascript引出。

<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.如何设置进度条和视频的播放时长

同步进行。

如图所示:

H5新属性audio音频和video视频的控制详解(推荐)

这里说一下,首先

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

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

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

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

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

4.如何用表单元素 range属性控制视频的音量大小。

1、首先需要获取到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。

H5新属性audio音频和video视频的控制详解(推荐)

最终实现的代码如下; 

<!DOCTYPE html> 
<html> 
<body> 
<video id="video1" controls="controls" width="400px" height="400px">
<source src="img/1.mp4">
</video>

<div>
<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"/>
</div>

<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>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

HTML / CSS 相关文章推荐
CSS3 translate导致字体模糊的实例代码
Aug 30 HTML / CSS
浅析与CSS3的loading动画加载相关的transition优化
May 18 HTML / CSS
CSS3 rgb and rgba(透明色)的使用详解
Sep 25 HTML / CSS
HTML5 progress和meter控件_动力节点Java学院整理
Jul 06 HTML / CSS
HTML5 使用 sessionStorage 进行页面传值的方法
Jul 02 HTML / CSS
让IE9以下版本的浏览器兼容HTML5的方法
Mar 12 HTML / CSS
使用HTML5 Canvas为图片填充颜色和纹理的教程
Mar 21 HTML / CSS
实例讲解利用HTML5 Canvas API操作图形旋转的方法
Mar 22 HTML / CSS
HTML5本地存储之Web Storage详解
Jul 04 HTML / CSS
Html5应用程序缓存(Cache manifest)
Jun 04 HTML / CSS
HTML5自定义视频播放器源码
Jan 06 HTML / CSS
Html5 webRTC简单实现视频调用的示例代码
Sep 23 HTML / CSS
Html5 Geolocation获取地理位置信息实例
Dec 09 #HTML / CSS
详解移动端html5页面长按实现高亮全选文本内容的兼容解决方案
Dec 03 #HTML / CSS
HTML5标签大全
Nov 23 #HTML / CSS
HTML5拖放效果的实现代码
Nov 17 #HTML / CSS
html5 div布局与table布局详解
Nov 16 #HTML / CSS
纯HTML5+CSS3制作生日蛋糕(代码易懂)
Nov 16 #HTML / CSS
HTML5制作表格样式
Nov 15 #HTML / CSS
You might like
smarty+adodb+部分自定义类的php开发模式
2006/12/31 PHP
解析ajax事件的调用顺序
2013/06/17 PHP
PHP用身份证号获取星座和生肖的方法
2013/11/07 PHP
Drupal7 form表单二次开发要点与实例
2014/03/02 PHP
轻松实现php文件上传功能
2017/02/17 PHP
JQuery里选择超链接的实现代码
2011/05/22 Javascript
php 中序列化和json使用介绍
2013/07/08 Javascript
javascript匿名函数实例分析
2014/11/18 Javascript
JS倒计时代码汇总
2014/11/25 Javascript
jquery比较简洁的软键盘特效实现方法
2015/03/19 Javascript
js简单实现竖向tab选项卡的方法
2015/05/04 Javascript
详解AngularJS中自定义指令的使用
2015/06/17 Javascript
深入理解JS实现快速排序和去重
2016/10/17 Javascript
Element中的Cascader(级联列表)动态加载省\市\区数据的方法
2019/03/27 Javascript
解决jquery validate 验证不通过后验证正确的信息仍残留在label上的方法
2019/08/27 jQuery
layui默认选中table的CheckBox复选框方法
2019/09/19 Javascript
JS使用正则表达式提交页面验证的代码
2019/10/16 Javascript
Python实现计算文件夹下.h和.cpp文件的总行数
2015/04/23 Python
Python实现数通设备端口使用情况监控实例
2015/07/15 Python
详解Python中 sys.argv[]的用法简明解释
2017/12/20 Python
python绘制圆柱体的方法
2018/07/02 Python
Python XML转Json之XML2Dict的使用方法
2019/01/15 Python
说说如何遍历Python列表的方法示例
2019/02/11 Python
python3 批量获取对应端口服务的实例
2019/07/25 Python
python利用7z批量解压rar的实现
2019/08/07 Python
python shapely.geometry.polygon任意两个四边形的IOU计算实例
2020/04/12 Python
打印tensorflow恢复模型中所有变量与操作节点方式
2020/05/26 Python
Flask缓存静态文件的具体方法
2020/08/02 Python
Stefania Mode美国:奢华设计师和时尚服装
2018/01/07 全球购物
艺术家策划的室内设计:Curious Egg
2019/03/06 全球购物
大学生创业计划书的范文
2014/01/07 职场文书
户外婚礼策划方案
2014/02/08 职场文书
车间质检员岗位职责
2015/04/08 职场文书
2015年全国爱眼日活动方案
2015/05/05 职场文书
Python的flask接收前台的ajax的post数据和get数据的方法
2021/04/12 Python
python神经网络学习 使用Keras进行简单分类
2022/05/04 Python