详解Html5中video标签那些属性和方法


Posted in HTML / CSS onJuly 01, 2019

前言

最近在写一个自定义播放器, 写之前我们肯定要把播放器的属性和方法全部过一遍,知彼知己,方能百战不殆嘛...后面会把自己写的播放器和踩过的一些坑也上传上来

video标签行内属性

  • src:视频的URL
  • poster:视频封面,没有播放时显示的图片
  • preload:预加载
  • autoplay:自动播放
  • loop:循环播放
  • controls:浏览器自带的控制条
  • width:视频宽度
  • height:视频高度
  • webkit-playsinline="true" IOS下防止全屏播放
  • playsinline="true" 同上
  • x-webkit-airplay="true" 支持ios的AirPlay功能
  • x5-video-player-type="h5" 启用同层H5播放器
  • x5-video-player-fullscreen="true" 全屏设置
  • x5-video-orientation="portraint" 竖屏
  • style="object-fit:fill" 封面铺满
  • muted="true" 静音播放

应该还有一些...不过暂时没用到, 可以去查MDN文档

video对象的属性和方法

1.错误状态

$video.error; //null:正常  
   $video.error.code; //1.用户终止 2.网络错误 3.解码错误 4.URL无效

2.网络状态属性(有些比较常用)

$video.currentSrc; //返回当前资源的URL  
   $video.src = value; //返回或设置当前资源的URL  
   $video.canPlayType(type); //是否能播放某种格式的资源  
   $video.networkState; //0.此元素未初始化  1.正常但没有使用网络  2.正在下载数据  3.没有找到资源  
   $video.load(); //重新加载src指定的资源  
   $video.buffered; //返回已缓冲区域,$video.buffered.end(0)拿到最后一刻的数据
   $video.preload; //none:不预载 metadata:预载资源信息 auto:

3.准备状态

$video.readyState;    //1:HAVE_NOTHING 2:HAVE_METADATA 3.HAVE_CURRENT_DATA 4.HAVE_FUTURE_DATA 5.HAVE_ENOUGH_DATA  
   $video.seeking; //是否正在seeking

4.播放状态( 常用 )

$video.currentTime = value; //当前播放的位置,赋值可改变位置   
   $video.duration; //当前资源长度 流返回无限  
   $video.paused; //是否暂停  
   $video.defaultPlaybackRate = value;//默认的回放速度,可以设置  
   $video.playbackRate = value;//当前播放速度,设置后马上改变  
   $video.seekable; //返回可以seek的区域 
   $video.ended; //是否结束  
   $video.autoPlay;  //是否自动播放  
   $video.loop;  //是否循环播放  
   $video.play();    //播放  
   $video.pause();   //暂停

5.控制

$video.controls;//是否有默认控制条  
   $video.volume = value; //音量  
   $video.muted = value; //静音
video事件方法(常用的加*了)
loadstart   //客户端开始请求数据  
*progress    //客户端正在请求数据  
suspend     //延迟下载  
abort       //客户端主动终止下载(不是因为错误引起),  
*error      //请求数据时遇到错误  
stalled     //网速失速  
*play        //play()和autoplay开始播放时触发  
*pause      //pause()触发  
loadedmetadata  //成功获取资源长度  
*waiting    //等待数据,并非错误  
*playing     //开始回放  
canplay     //可以播放,但中途可能因为加载而暂停  
*canplaythrough //可以播放  
seeking     //资源寻找中  
seeked      //资源寻找完毕  
*timeupdate  //播放时间改变  
*ended       //播放结束  
ratechange  //播放速率改变  
durationchange  //资源长度改变  
*volumechange    //音量改变

基本上自定义播放器代码都是基于这个api和属性来写的, 以后方便自己查阅....

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

HTML / CSS 相关文章推荐
通过css3动画和opacity透明度实现呼吸灯效果
Aug 09 HTML / CSS
CSS3中线性颜色渐变的一些实现方法
Jul 14 HTML / CSS
详解css3中dispaly的Grid布局与Flex布局
Sep 11 HTML / CSS
Html5移动端获奖无缝滚动动画实现示例
Jun 25 HTML / CSS
html5桌面通知(Web Notifications)实例解析
Jul 07 HTML / CSS
a标签下载链接的简单实现
Sep 13 HTML / CSS
HTML5自定义属性前缀data-及dataset的使用方法(html5 新特性)
Aug 24 HTML / CSS
教你使用Canvas处理图片的方法
Nov 28 HTML / CSS
HTML5 播放 RTSP 视频的实例代码
Jul 29 HTML / CSS
html如何对span设置宽度
Oct 30 HTML / CSS
h5封装下拉刷新
Aug 25 HTML / CSS
css中有哪些方式可以隐藏页面元素及区别
Jun 16 HTML / CSS
HTML5之多线程(Web Worker)
Jan 02 #HTML / CSS
浅谈pc和移动端的响应式的使用
Jan 03 #HTML / CSS
canvas绘制文本内容自动换行的实现代码
Jan 14 #HTML / CSS
详解通过变换矩阵实现canvas的缩放功能
Jan 14 #HTML / CSS
html Table 表头固定的实现
Jan 22 #HTML / CSS
Html5如何唤起百度地图App的方法
Jan 27 #HTML / CSS
canvas学习笔记之绘制简单路径
Jan 28 #HTML / CSS
You might like
德劲1107的电路分析与打磨
2021/03/02 无线电
用PHP和ACCESS写聊天室(九)
2006/10/09 PHP
PHPMailer使用教程(PHPMailer发送邮件实例分析)
2012/12/06 PHP
PHP中mysqli_affected_rows作用行数返回值分析
2014/12/26 PHP
laravel validate 设置为中文的例子(验证提示为中文)
2019/09/29 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
TypeScript 学习笔记之基本类型
2015/06/19 Javascript
js跨域请求数据的3种常用的方法
2015/12/01 Javascript
你一定会收藏的Nodejs代码片段
2016/02/04 NodeJs
jquery zTree异步加载简单实例讲解
2016/02/25 Javascript
Javascript简写条件语句(推荐)
2016/06/12 Javascript
jQuery EasyUI Tab 选项卡问题小结
2016/08/16 Javascript
javascript数组遍历的方法实例分析
2016/09/13 Javascript
BootStrap栅格系统、表单样式与按钮样式源码解析
2017/01/20 Javascript
js简易版购物车功能
2017/06/17 Javascript
jquery实现限制textarea输入字数的方法
2017/09/06 jQuery
实战node静态文件服务器的示例代码
2018/03/08 Javascript
JavaScript遍历数组和对象的元素简单操作示例
2019/07/09 Javascript
vue项目中引入Sass实例方法
2019/08/27 Javascript
[00:35]DOTA2上海特级锦标赛 MVP.Phx战队宣传片
2016/03/04 DOTA
Python中变量交换的例子
2014/08/25 Python
python基础教程之缩进介绍
2014/08/29 Python
判断网页编码的方法python版
2016/08/12 Python
python 2.7.14安装图文教程
2018/04/08 Python
DataFrame:通过SparkSql将scala类转为DataFrame的方法
2019/01/29 Python
Python qqbot 实现qq机器人的示例代码
2019/07/11 Python
使用Tensorboard工具查看Loss损失率
2020/02/15 Python
简单了解Python write writelines区别
2020/02/27 Python
英国品牌男装折扣网站:Brown Bag
2018/03/08 全球购物
现场施工员岗位职责
2014/03/10 职场文书
授权委托书
2014/07/31 职场文书
清明节网上祭英烈寄语2015
2015/03/04 职场文书
教师工作证明范本
2015/06/12 职场文书
建议书的格式及范文
2015/09/14 职场文书
java如何实现获取客户端ip地址的示例代码
2022/04/07 Java/Android
SQL Server中搜索特定的对象
2022/05/25 SQL Server