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 相关文章推荐
35款精致的 CSS3 和 HTML5 网页模板 推荐
Aug 03 HTML / CSS
浅谈css3中的前缀
Jul 20 HTML / CSS
CSS3实现鼠标悬停显示扩展内容
Aug 24 HTML / CSS
HTML5表格_动力节点Java学院整理
Jul 11 HTML / CSS
html5调用摄像头功能的实现代码
May 07 HTML / CSS
将HTML5 Canvas的内容保存为图片借助toDataURL实现
May 20 HTML / CSS
HTML5 History API 实现无刷新跳转
Jan 11 HTML / CSS
基于HTML5+CSS3实现简单的时钟效果
Sep 11 HTML / CSS
使用placeholder属性设置input文本框的提示信息
Feb 19 HTML / CSS
AmazeUI 加载进度条的实现示例
Aug 20 HTML / CSS
详解HTML5中CSS外观属性
Sep 10 HTML / CSS
CSS三大特性继承性、层叠性和优先级详解
Jan 18 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
php下使用SimpleXML 处理XML 文件
2010/02/27 PHP
PHP无限分类代码,支持数组格式化、直接输出菜单两种方式
2011/05/18 PHP
PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明
2011/07/01 PHP
php cc攻击代码与防范方法
2012/10/18 PHP
php图片缩放实现方法
2014/02/20 PHP
php中in_array函数用法探究
2014/11/25 PHP
Session 失效的原因汇总及解决丢失办法
2015/09/30 PHP
PHP通过加锁实现并发情况下抢码功能
2016/08/10 PHP
JQuery循环滚动图片代码
2011/12/08 Javascript
javascript实现获取浏览器版本、操作系统类型
2015/01/29 Javascript
Javascript函数式编程简单介绍
2015/10/11 Javascript
javascript面向对象程序设计高级特性经典教程(值得收藏)
2016/05/19 Javascript
Javascript获取随机数的实现方法
2016/06/22 Javascript
jq实现左滑显示删除按钮,点击删除实现删除数据功能(推荐)
2016/08/23 Javascript
JS复制对应id的内容到粘贴板(Ctrl+C效果)
2017/01/23 Javascript
Vue.js在使用中的一些注意知识点
2017/04/29 Javascript
基于 Bootstrap Datetimepicker 联动
2017/08/03 Javascript
Vue-cropper 图片裁剪的基本原理及思路讲解
2018/04/17 Javascript
express.js中间件说明详解
2019/03/19 Javascript
JS多个异步请求 按顺序执行next实现解析
2019/09/16 Javascript
JavaScript链式调用原理与实现方法详解
2020/05/16 Javascript
python实现DES加密解密方法实例详解
2015/06/30 Python
1 行 Python 代码快速实现 FTP 服务器
2018/01/25 Python
异步任务队列Celery在Django中的使用方法
2018/06/07 Python
numpy 计算两个数组重复程度的方法
2018/11/07 Python
Python实现图片查找轮廓、多边形拟合、最小外接矩形代码
2020/07/14 Python
python如何绘制疫情图
2020/09/16 Python
html5指南-3.如何实现html元素拖拽功能
2013/01/07 HTML / CSS
JBL美国官方商店:扬声器、耳机等
2019/12/01 全球购物
Scotch Porter官方网站:男士美容产品
2020/08/31 全球购物
学术会议欢迎词
2014/01/09 职场文书
小学英语教学反思
2014/01/30 职场文书
六查六看自查报告
2014/10/14 职场文书
销售员岗位职责
2015/02/10 职场文书
画展观后感
2015/06/17 职场文书
15个值得收藏的JavaScript函数
2021/09/15 Javascript