h5-audio/video标签
音频/视频
基础用法
属性
事件
audio元素和video元素
<audio id="audio" src="./成都.mp3"></audio>
<video id="video" src="./成都.mp4"></video>
一些属性
1、autoplay 自动播放
<audio src="成都.mp3" autoplay></audio>
2、controls 设置控件
<audio src="成都.mp3" autoplay controls></audio>
3、preload(none/metadata/auto) 预加载,规定是否在页面加载后载入视频 (与autoplay不能同时存在)
none 不需要加载数据
metadata 元数据 诸如时长、比特率、帧大小这样的原数据,而不是媒体内容需要加载的
auto 浏览器应当加载它认为适量的媒体内容
<audio src="成都.mp3" autoplay controls preload="auto"></audio>
4、loop 是否循环播放音/视频
<audio src="成都.mp3" autoplay controls loop preload="auto"></audio>
5、poster (video 独有)
当视频不可用时,使用一张图片替代,否则是空白 <video src="成都.mp4" poster="封面.jpg" controls></video>
多类型资源
<audio id="music">
<source src="成都.mp3" type="audio/mpeg">
<source src="成都.ogg" type='audio/ogg"'>
</audio>
(有时候不识别,为了保险起见,可以用哪个就拿哪个)
脚本化
var audio = document.getElementById('audio');
var audio = new Audio('./laojie.mp3');
var audio = document.createElement('video');
<script>
var audio = document.createElement('audio');
audio.setAttribute('controls','controls'); //增加属性
audio.setAttribute('autoplat','autoplay');
audio.loop = "loop";
audio.src = ""; //资源路径
document.body.appendChild(audio);
</script>
设置属性
controls/loop/preload/autoplay属性
audio.controls = true;
audio.loop = 'loop';
audio.preload = 'auto';
audio.autoplay = true;
currentSrc 资源链接,媒体数据的url地址
注意:window.onload
方法
1、play() 方法
2、pause() 方法
3、load()方法
重新加载视频/音频元素,用于在更改来源或其他设置后对音频/视频元素进行更新
音量 volume属性
表示播放音量,介于0(静音)~1(最大音量)之间,默认1。
将muted属性设置为true则会进入静音模式,设置为false则会恢复之前指定的音量继续播放。
超过范围会报错[0, 1]
<body>
<audio src="" controls></audio>
<button id="volum_add">+</button>
<button id="volum_sub">-</button>
<button id="play">播放</button>
<button id="pause">暂停</button>
<button id="reload">重播</button>
<script>
var audio = document.getElementsByTagName('audio')[0];
volum_add.onclick = function(){
if(audio.volume <=0.7){
audio.volume += 0.3;
}else{
audio.volume = 1;
}
}
volum_sub.onclick = function(){
if(audio.volume >=0.3){
audio.volume -= 0.3;
}else{
audio.volume = 0;
}
}
play.onclick = function(){
audio.play();
}
pause.onclick = function(){
audio.pause();
}
reload.onclick = function(){
audio.load();
audio.play();
}
</script>
播放速率 playbackRate
用于指定媒体播放的速度。该属性值为1.0表示正常速度,大于1则表示”快进”,0~1之间表示”慢放",负值表示回放。
每个浏览器实现的会有差别,具体看浏览器实现
<button id="add_rate">快进</button>
<button id="sub_rate">慢放</button>
add_rate.onclick = function(e){
if(audio.playbackRate < 2){
audio.playbackRate += 0.1;
}
}
sub_rate.onclick = function(e){
if(audio.playbackRate > 0.5){
audio.playbackRate -= 0.1;
}
}
currentTime/duration属性
currentTime 设置或返回音频/视频播放的当前位置
duration 返回当前音频/视频的时长(window.onload)
单位 秒
played/buffered/seekable
played属性返回已经播放(看过)的时间段,buffered属性返回当前已经缓冲的时间段,seekable属性则返回用户可以跳转的时间段。这三个属性都是TimeRanges对象,每个对象都有一个length属性以及start()和end()方法,length属性表示当前的一个时间段,start()与end()分别返回当前时间段的起始时间点和结束时间点(单位是秒,起始参数是0)
下面代码确定当前缓存内容的百分比:
paused/seeking/ended (都返回布尔值)
这三个属性用来查询媒体播放状态,paused为true表示播放器暂停。seeking为true表示播放器正在调到一个新的播放点,如果播放器播放完媒体并且停下来,则ended属性为true。
作为了解
play.onclick = function(){
if(audio.paused){
audio.play();
play.innerText = '暂停'
}else{
audio.pause();
play.innerText = '播放'
}
} //播放、暂停一体
canPlayType()方法 (看浏览器是否支持播放当前文件)
h5-audio/video标签的更多相关文章
- HTML5 Audio/Video 标签,属性,方法,事件汇总
HTML5 Audio/Video 标签,属性,方法,事件汇总 (转) 2011-06-28 13:16:48 <audio> 标签属性:src:音乐的URLpreload:预加载au ...
- [转载]HTML5 Audio/Video 标签,属性,方法,事件汇总
<audio> 标签属性: src:音乐的URL preload:预加载 autoplay:自动播放 loop:循环播放 controls:浏览器自带的控制条 <audio id=& ...
- h5的video标签
在video标签中,我们可以使用属性:videoWidth & videoHeight,它获取的是video的宽度和高度(媒体本身). 虽然不能直接使用,但是可以通过计算宽高比得到 video ...
- HTML5 Audio/Video 标签,属性,方法,事件汇总 (转)
HTML5 Audio/Video 标签,属性,方法,事件 <audio> 标签属性:src:音乐的URLpreload:预加载autoplay:自动播放loop:循环播放contro ...
- IPhone微信H5用Video标签播放不了视频
H5用Video标签播放视频 视频在安卓上可以正常播放,在苹果上却不能播放. 因为用了文件服务站点,而且不支持断点下载 把文件服务改成支持断点下载即可 断点下载参考(C#)
- 【转载】HTML5 Audio/Video 标签,属性,方法,事件汇总
<audio> 标签属性: src:音乐的URL preload:预加载 autoplay:自动播放 loop:循环播放 controls:浏览器自带的控制条 Html代码 <au ...
- [转帖]HTML5 Audio/Video 标签,属性,方法,事件汇总
HTML5 Audio/Video 标签,属性,方法,事件汇总 <audio>标签属性: src:音乐的URL preload:预加载 autoplay:自动播放 loop:循环播放 co ...
- H5 <audio> 音频标签自定义样式修改以及添加播放控制事件
H5 <audio> 音频标签自定义样式修改以及添加播放控制事件 Dandelion_drq 关注 2017.08.28 14:48* 字数 331 阅读 2902评论 3喜欢 3 说明: ...
- 解决h5的video标签,android、ipad客户端播放正常,iphone客户端无法播放
在做html5时插入一个视频播放标签video后,测试时android.ipad客户端播放正常,唯独iphone自带浏览器无法播放. 解决办法: 判断用户所使用客户端访问h5页面时是iphone时,点 ...
- 更改kindeditor编辑器,改用支持h5的video标签替换原有embed标签
kindeditor是一款不错的可视化编辑器,不过最近几年似乎没在更新,现在h5趋于主流,正好有个业务需要编辑器支持mp4视频的播放,考虑到现在h5中的video标签的强大,于是决定将原来系统中的em ...
随机推荐
- Python if语句
a=99 b=input("请输入一个数字:") int(b) if a >b: print("欢迎来到Python") eilf a=b: print( ...
- jquery中使元素显示和隐藏方法之间的区别
在实际的项目开发中,要使一个元素隐藏的方法有很多,比如css的多种属性和jquery的多种方法,虽然他们的作用都是使元素不可见,但是各个方法实现的原理是不一样的.下面主要介绍jquery各个元素隐藏方 ...
- Java图片验证码学习
- 生产redis client 连接无法释放
原因是spring配置文件,开启了事务导致的,redis是缓存用的,不需要开启事务,正确的配置如下: <!--redis操作模版,使用该对象可以操作redis --> <bean i ...
- linux(centos6.9)安装步骤
http://blog.csdn.net/u012453843/article/details/52819756 https://mirrors.aliyun.com/ 下载想要的版本 2选择新建虚拟 ...
- zabbix之 qq邮件报警
一.安装sendmail或postfix[root@zabbix ~]# yum install sendmail –y #在线yum安装sendmail[ro ...
- mysql悲观锁
悲观锁与乐观锁是两种常见的资源并发锁设计思路,也是并发编程中一个非常基础的概念. 悲观锁(Pessimistic Lock) 悲观锁的特点是先获取锁,再进行业务操作,即“悲观”的认为获取锁是非常有可能 ...
- 黄聪:如何扩展Chrome DevTools来获取页面请求
1. Chrome DevTools Extension 熟悉React的同学,可能对React Developer Tools并不陌生, 刚看到的时候,我也觉得很神奇, 因为React De ...
- iframe-父子-兄弟页面相互传值(jq和js两种方法)
参考文章: http://blog.csdn.net/u013299635/article/details/78773207 http://www.cnblogs.com/xyicheng/archi ...
- Java中运行时异常和非运行时异常什么鬼?
Java中的异常分类 RuntimeException(也称unchecked exceptions,运行时异常) 就是我们在开发中测试功能时程序终止,控制台出现的异常.(一般来说,出现运行时异常基本 ...