详解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 相关文章推荐
8款精美的CSS3表单设计(登录表单/下拉选择/按钮附演示及源码)
Feb 04 HTML / CSS
CSS3实现可关闭的下拉手风琴菜单效果
Aug 31 HTML / CSS
基于html和CSS3制作酷炫的导航栏
Sep 23 HTML / CSS
CSS3之transition实现下划线的示例代码
May 30 HTML / CSS
利用CSS3动画实现圆圈由小变大向外扩散的效果实例
Sep 10 HTML / CSS
html5定位获取当前位置并在百度地图上显示
Aug 22 HTML / CSS
HTML5 Convas APIs方法详解
Apr 24 HTML / CSS
HTML5中使用postMessage实现两个网页间传递数据
Jun 22 HTML / CSS
HTML5各种头部meta标签的功能(推荐)
Mar 13 HTML / CSS
HTML5开发动态音频图的实现
Jul 02 HTML / CSS
Ratchet 模态框的实现
Aug 19 HTML / CSS
CSS实现渐变色边框(Gradient borders)的5种方法
Mar 25 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
php 应用程序安全防范技术研究
2009/09/25 PHP
PHP Undefined index报错的修复方法
2011/07/17 PHP
php页面防重复提交方法总结
2013/11/25 PHP
解决PhpMyAdmin中导入2M以上大文件限制的方法分享
2014/06/06 PHP
PHP中如何使用session实现保存用户登录信息
2015/10/20 PHP
PHP使用文件锁解决高并发问题示例
2018/03/29 PHP
ThinkPHP框架实现的邮箱激活功能示例
2018/06/15 PHP
取得传值的函数
2006/10/27 Javascript
JavaScript初学者需要了解10个小技巧
2010/08/25 Javascript
基于jQuery的输入框无值自动显示指定数据的实现代码
2011/01/24 Javascript
EasyUI的treegrid组件动态加载数据问题的解决办法
2011/12/11 Javascript
删除javascript中注释语句的正则表达式
2014/06/11 Javascript
Shell脚本实现Linux系统和进程资源监控
2015/03/05 Javascript
jQuery实现鼠标悬停显示提示信息窗口的方法
2015/04/30 Javascript
实例讲解js验证表单项是否为空的方法
2016/01/09 Javascript
js删除局部变量的实现方法
2016/06/25 Javascript
vue-scroller记录滚动位置的示例代码
2018/01/17 Javascript
React router动态加载组件之适配器模式的应用详解
2018/09/12 Javascript
django js 实现表格动态标序号的实例代码
2019/07/12 Javascript
TypeScript 引用资源文件后提示找不到的异常处理技巧
2020/07/15 Javascript
python网络编程学习笔记(九):数据库客户端 DB-API
2014/06/09 Python
Python的Flask框架中使用Flask-Migrate扩展迁移数据库的教程
2016/06/14 Python
python实现支付宝转账接口
2019/05/07 Python
python3.6+selenium实现操作Frame中的页面元素
2019/07/16 Python
Django中提供的6种缓存方式详解
2019/08/05 Python
python实现操作文件(文件夹)
2019/10/31 Python
python numpy生成等差数列、等比数列的实例
2020/02/25 Python
解决pymysql cursor.fetchall() 获取不到数据的问题
2020/05/15 Python
Python趣味入门教程之循环语句while
2020/08/26 Python
python实现发送邮件
2021/03/02 Python
马克华菲官方商城:Mark Fairwhale
2016/09/04 全球购物
飞利浦法国官网:Philips法国
2019/07/10 全球购物
Club Monaco加拿大官网:设计师男女服装
2019/09/29 全球购物
英语专业个人求职信范文
2014/02/01 职场文书
品质标语大全
2014/06/21 职场文书
计划生育个人总结
2015/03/02 职场文书