html5视频常用API接口
一、虽然有的属性是boolean类型,但仍旧建议按照XHTML书写(属性名=”属性值”)格式,避免出现错误 (下面加粗的属性为常用属性)
|
属性 |
值 |
功能描述 |
|
controls |
controls |
是否显示播放控件 |
|
autoplay |
autoplay |
设置是否打开浏览器后自动播放 |
|
width |
Pilex(像素) |
设置播放器的宽度 |
|
height |
Pilex(像素) |
设置播放器的高度 |
|
loop |
loop |
设置视频是否循环播放(即播放完后继续重新播放) |
|
preload |
preload |
设置是否等加载完再播放 |
|
src |
url |
设置要播放视频的url地址 |
|
poster |
imgurl |
设置播放器初始默认显示图片 |
|
autobuffer |
autobuffer |
设置为浏览器缓冲方式,不设置autoply才有效 |
演示:
<video controls="controls" width="500px" height="500px" loop autoplay poster="imgUrl">
<source src="黑客之都.mp4" type="video/mp4"/>
<track src="a.vtt" label="中文" srclang="zh" kind="subtitles" default/>
</video>
二、.video标签API方法:Video标签也提供了比较人性化的API接口方法,供写JS时直接调用,方便简单
|
API |
事件说明 |
|
addTextTrack() |
向音频/视频添加新的文本轨道。 |
|
play |
video.play(); 播放视频 |
|
pause |
video.pause(); 暂停播放视频 |
|
load |
video.load(); 将全部属性回复默认值,视频恢复重新开始状态 |
|
canPlayType |
var support = videoid.canPlayType('video/mp4'); 判断浏览器是否支持当前类型的视频格式 返回值: 空字符串:不支持 Maybe:可能支持 Probably:完全支持 |
关于video标签的API接口在JS中用法如下:
<!DOCTYPE HTML>
<html>
<head>
<style>
video::cue{
background-color:transparent;
color:white;
font-size:20px;
line-height: 100px;
}
</style>
</head>
<body> <video controls="controls" id="video1">
<source src="黑客之都.Hackerville.S01E01.720P.mp4" type="video/mp4"/>
<track src="a.vtt" label="中文字幕" srclang="zh" kind="subtitles" default/>
</video>
<button onclick="isPlay(this)">播放</button>
<button onclick="replay()">重新播放</button>
<button onclick="isPlayType()">浏览器支持</button> <script>
var video1 = document.getElementById("video1"); //括号内为video标签的id
//播放视频(点击播放按钮,后变成暂停)
function isPlay(obj1){
if(video1.paused){ //paused属于视频api属性
obj1.innerHTML="暂停";
video1.play();
}else{
obj1.innerHTML="播放";
video1.pause();
}
} //重新从开头播放
function replay(){
video1.load();
} //判断要播放的视频格式当前浏览器是否支持
function isPlayType(){
var support = video1.canPlayType("video/mp4");
console.log(support); //返回结果:空字符串、maybe(可能支持)、probably(支持)
}
</script>
</body>
</html>
三、video标签API属性: Video不仅提供了API接口,还提供了许多的API属性,方便在JS中做判断,如下:大部分属性通过boolean值判断
|
API属性 |
事件说明 |
|
duration |
返回媒体的播放总时长,单位秒 |
|
loop |
是否循环播放 |
|
muted |
是否静音 |
|
paused |
是否暂停 |
|
currentTime |
当前播放时间(单位:秒) |
|
volume |
音量值(0~1) |
|
networkState |
返回当前网络状态 |
|
playbackRate |
播放的倍速(加速、减速播放)(-2~2) |
|
src |
当前视频源的URL |
|
ended |
返回当前播放是否结束标志 |
|
error |
返回当前播放的错误状态 |
|
initialTime |
返回初始播放的位置 |
|
mediaGroup |
当前音视频所属媒体组 (用来链接多个音视频标签) |
|
played |
当前播放部件已经播放的时间范围(TimeRanges对象) |
|
preload |
页面加载时是否同时加载音视频 |
|
readyState |
返回当前的准备状态 |
|
seekable |
返回当前可跳转部件的时间范围(TimeRanges对象) |
|
audioTracks |
返回可用的音轨列表(MultipleTrackList对象) |
|
autoplay |
媒体加载后自动播放 |
|
buffered |
返回缓冲部件的时间范围(TimeRanges对象) |
|
controller |
返回当前的媒体控制器(MediaController对象) |
|
controls |
显示播控控件 |
|
crossOrigin |
CORS设置 |
|
currentSrc |
返回当前媒体的URL |
|
defaultMuted |
缺省是否静音 |
|
defaultPlaybackRate |
播控的缺省倍速 |
|
seeking |
返回用户是否做了跳转操作 |
|
startOffsetTime |
返回当前的时间偏移(Date对象) |
|
textTracks |
返回可用的文本轨迹(TextTrackList对象) |
|
videoTracks |
返回可用的视频轨迹(VideoTrackList对象) |
演示:
<script>
function setting(){
video1.muted=true; //设置静音
video1.volume=0.2; //设置音量,1等于100%
video1.playbackRate=2; //2倍播放速度
video1.controls=false; //不显示播控控件
}
</script>
四、音频/视频事件
| 事件 | 描述 |
| abort | 当音频/视频的加载已放弃时触发。 |
| canplay | 当浏览器可以开始播放音频/视频时触发。 |
| canplaythrough | 当浏览器可在不因缓冲而停顿的情况下进行播放时触发。 |
| durationchange | 当音频/视频的时长已更改时触发。 |
| emptied | 当目前的播放列表为空时触发。 |
| ended | 当目前的播放列表已结束时触发。 |
| error | 当在音频/视频加载期间发生错误时触发。 |
| loadeddata | 当浏览器已加载音频/视频的当前帧时触发。 |
| loadedmetadata | 当浏览器已加载音频/视频的元数据时触发。 |
| loadstart | 当浏览器开始查找音频/视频时触发。 |
| pause | 当音频/视频已暂停时触发。 |
| play | 当音频/视频已开始或不再暂停时触发。 |
| playing | 当音频/视频在因缓冲而暂停或停止后已就绪时触发。 |
| progress | 当浏览器正在下载音频/视频时触发。 |
| ratechange | 当音频/视频的播放速度已更改时触发。 |
| seeked | 当用户已移动/跳跃到音频/视频中的新位置时触发。 |
| seeking | 当用户开始移动/跳跃到音频/视频中的新位置时触发。 |
| stalled | 当浏览器尝试获取媒体数据,但数据不可用时触发。 |
| suspend | 当浏览器刻意不获取媒体数据时触发。 |
| timeupdate | 当目前的播放位置已更改时触发。 |
| volumechange | 当音量已更改时触发。 |
| waiting | 当视频由于需要缓冲下一帧而停止时触发。 |
html5视频常用API接口的更多相关文章
- 常用API接口汇总
下面列举了100多个国内常用API接口,并按照 笔记.出行.词典.电商.地图.电影.即时通讯.开发者网站.快递查询.旅游.社交.视频.天气.团队协作.图片与图像处理.外卖.消息推送.音乐.云.语义识别 ...
- 常用API接口
引用 常用API接口汇总
- html5 canvas常用api总结(一)
1.监听浏览器加载事件. window.addEventListener("load",eventWindowLoaded,false); load事件在html页面加载结束时发生 ...
- 转载-常用API接口签名验证参考
原文地址: http://www.cnblogs.com/hnsongbiao/p/5478645.html 写的很好,就做个笔记了.感谢作者! 项目中常用的API接口签名验证方法: 1. 给app分 ...
- 常用API接口签名验证参考
项目中常用的API接口签名验证方法: 1. 给app分配对应的key.secret2. Sign签名,调用API 时需要对请求参数进行签名验证,签名方式如下: a. 按照请求参数名称将所有请求参数按照 ...
- html5 canvas常用api总结(三)--图像变换API
canvas的图像变换api,可以帮助我们更加方便的绘画出一些酷炫的效果,也可以用来制作动画.接下来将总结一下canvas的变换方法,文末有一个例子来更加深刻的了解和利用这几个api. 1.画布旋转a ...
- html5 canvas常用api总结(二)--绘图API
canvas可以绘制出很多奇妙的样式和美丽的效果,通过几个简单的api就可以在画布上呈现出千变万化的效果,还可以制作网页游戏,接下来就总结一下和绘图有关的API. 绘画的时候canvas相当于画布,而 ...
- appium 基础:常用api接口(2)
一.获取手机分辨率 size=driver.get_window_size()#获取手机屏幕大小,分辨率 print(size)#{'width': 720, 'height': 1280} 得到的是 ...
- appium 基础二:常用api接口
一.获取手机分辨率 size=driver.get_window_size()#获取手机屏幕大小,分辨率 print(size)#{'width': 720, 'height': 1280} 得到的是 ...
随机推荐
- Erlang模块gen_fsm翻译
模块摘要 通用有限状态机行为. 描述 用于实现有限状态机的行为模块.使用该模块实现的通用有限状态机进程(gen_fsm)将具有一组标准的接口函数,并包括用于跟踪和错误报告的功能.它 ...
- 【Offer】[54] 【二叉搜索树的第k小节点】
题目描述 思路分析 测试用例 Java代码 代码链接 题目描述 给定一棵二叉搜索树,请找出其中第k小的节点.例如,在下图的二叉搜索树里,按节点数值大小顺序,第三小节点的值是4.  牛客网刷题地址 思 ...
- Flink文章测试
Flink文章测试 Flink文章测试 Flink文章测试 Flink文章测试 Flink文章测试 Flink文章测试 Flink文章测试 Flink文章测试 Flink文章测试 Flink文章测试 ...
- TypeScript + React + Redux 实战简单天气APP全套完整项目
下载链接:https://www.yinxiangit.com/171.html 目录: 从面向过程的js到面向对象的js,让web前端更加高大尚.让你的前端步步日上,紧跟技术发展的前沿.让你构建更加 ...
- Vert.x Web 文档手册
Vert.x Web 中英对照表 Container:容器 Micro-service:微服务 Bridge:桥接 Router:路由器 Route:路由 Sub-Route: 子路由 Handler ...
- linux常用命令二
linux常用命令一 常用指令 ls 显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all ...
- PDF文件预览和下载
背景:项目中实现pdf文件的预览以及下载 环境:jdk1.8.SpringBoot2.0.Maven PDF.js下载地址将下载的源码拷入项目中 修改viewer.js: 将default ...
- VG有空间,创建逻辑卷
1.查看VG空间 [root@CNSZ22PL2787 ~]# vgs VG #PV #LV #SN Attr VSize VFree VolGroup00 1 7 0 wz--n- 1.63t 1. ...
- 一些简单的Linux命令(centos修改网络ip,修改主机名)
环境:linux centos 7 vi /etc/sysconfig/network-scripts/ifcfg-enp3s0f0 可以修改网关地址,网络IP地址,子网地址等等 [root@loca ...
- JSP官方文档(JavaServer Pages Specification)下载
找了好久,终于找到官网的下载地址了.这样,就可以用一手的文档资料了! 下载地址:http://download.oracle.com/otndocs/jcp/jsp-2_3-mrel2-spec/ s ...