一、下面播报一则新闻

Chrome 70已经原生支持HTML5 <video>播放时候Picture-in-Picture,也就是俗称的画中画技术,也就是很多视频网站看评论时候,播放视频变小挂在右下角的这种交互技术。

我一瞅自己的Chrome浏览器,正好就是Chrome 70,体验了一番,挺有意思的,值得介绍下,以后估计用得着。

二、先看画中画实例demo

点击页面的切换按钮,或者右键视频→画中画,都可以进入视频画中画模式:

在页面右下角可以看到一个小视频,尺寸小小的视频:

实际上,此时的这个小视频是个脱离于浏览器定位的,顶级的播放窗口,我们把浏览器最小化,此视频依然会在右下角播放,就像腾讯视频客户端播放器的精简模式一样:

于是,我们可以一边码代码,一边看网页视频了。

三、画中画几个API简介

画中画看上去很酷,总感觉API也会很复杂,实际上,除了名称长了点,超简单的。

假设变量video就是我们的<video>视频元素,则,进入画中画模式,直接一句:

// 进入画中画
video.requestPictureInPicture();
web前端开发学习Q-q-u-n: 767273102 ,分享学习的方法和需要注意的小细节,不停更新最新的教程和学习方法(详细的前端项目实战教学视频)

退出画中画模式,也是一句:

// 退出画中画
document.exitPictureInPicture();

为了方便我们监听视频的播放状态,还提供了2个事件API接口,如下:

// 进入画中画模式时候执行
video.addEventListener('enterpictureinpicture', function() {// 已进入画中画模式
});
// 退出画中画模式时候执行
video.addEventListener('leavepictureinpicture', function() {// 已退出画中画模式
});

最后,还提供了一个PictureInPictureWindow对象,也就是画中画窗口对象,包含widthheightonresize这些属性,示意如下:

{height: 192,onresize: null,width: 341
}

widthheight表示小窗口现在的高度和宽度,onresize属性值是个Function,可以监听小窗口尺寸的改变。PictureInPictureWindow对象的获取在画中画响应事件的event对象中,例如:

video.addEventListener('enterpictureinpicture', function(event) {var pipWindow = event.pictureInPictureWindow;// pipWindow就是一个PictureInPictureWindow对象// 我们可以绑定resize事件pipWindow.addEventListener('resize', function () {// pipWindow.width就是小视频窗口的宽度// pipWindow.height就是小视频窗口的高度});
});

以上,基本上就是HTML video Picture-in-Picture画中画技术全部API了,两个方法(进入和退出),两个事件(进入和退出)以及一个对象(画中画窗体对象)。

这点程度的学习相信大家一定都毫无压力。

对web前端这门技术感兴趣的小伙伴可以加入到我们的学习圈来,工作第六个年头了,与大家分享一些学习方法,实战开发需要注意的细节。767-273-102 秋裙。从零基础开始怎么样学好前端。都是一群有梦想的人,我们可能在不同的城市,但我们会一起结伴同行,点:前端前端前端

四、最后再说点啥

当视频进入画中画模式的时候,浏览器的标签页上会出现一个方框框小标志,同时title提示也会发生变化

当进入画中画模式的时候,原视频会停止播放、置灰,并提示已进入画中画模式:

web前端入门到实战:HTML5 video视频播放相关推荐

  1. html前端页面的基本骨架是,web前端入门到实战:css实现的骨架屏方案

    web前端入门到实战:css实现的骨架屏方案 发布时间:2020-08-04 01:32:03 来源:51CTO 阅读:152 作者:前端向南 优点 简单,不需要工程,不用puppeteer生成骨架d ...

  2. 转圈加载html,web前端入门到实战:纯CSS实现加载转圈样式

    web前端入门到实战:纯CSS实现加载转圈样式 发布时间:2020-05-27 18:11:33 来源:51CTO 阅读:134 作者:前端向南 不同的项目中对于等待加载时转圈圈的样式是不同的,有的是 ...

  3. web前端入门到实战:HTML5 VideoAPI,打造自己的Web视频播放器

    本文将使用HTML5提供的VideoAPI做一个自定义的视频播放器,需要用到HTML5提供的video标签.以及HTML5提供的对JavascriptAPI的扩展. 一.基础知识 1.用法 <v ...

  4. web前端入门到实战:HTML5新增和废弃的标签

    一.废弃的标签 以下的 HTML 4.01 元素在HTML5中已经被删除,虽然浏览器为了兼容性考虑都还支持这些标签,但建议使用新的替代标签,矛盾的是老浏览器对新标签的支持度又不够,视项目的受众对象而定 ...

  5. web前端入门到实战:HTML5文档类型如何定义,有哪些标签,以及如何使用,从整体认识HTML5

    html5新增结构标签 header 头部 nav 导航 section 区域 article 文章 aside 侧边栏 figure 一组多媒体内容 figcaption 多媒体内容的标题 foot ...

  6. html弧形列表效果,web前端入门到实战:html5网页特效-弧形菜单

    效果: 弧形菜单,文字按规则变形以及变换透明度 简单的javascript,上手难度:简单 学习笔记: text-decoration: 最主要的功能就是给文字加上附着在文字底部,上方,或者中间的线( ...

  7. web前端入门到实战:HTML5实现首页动态视频背景

    你想实现动态视频作为背景的首页吗?来,一起来学习,本文将带你一起实现H5动态视频背景: 首先网上找一段清晰的视频下载下来,最好是MP4格式的:下载好了之后我们新建一个html文件来写代码: html代 ...

  8. web前端入门到实战:纯HTML做出几个实用网页效果

    在我们以往看到的页面效果中,很多效果是需要JS搭配使用的,而今天在本文中,我将介绍如何使用纯HTML打造属于自己的实用效果. **1. **折叠手风琴 使用Details和Summary标签可以创建没 ...

  9. web前端入门到实战:CSS3两大实用属性,以及网页制作技巧

    一.使用 :not() 在菜单上应用/取消应用边框 我们通常的做法是先给每个菜单项设置边框,然后在设置最后一个菜单的边框为零 /* add border */ .nav li {border-righ ...

最新文章

  1. oracle 导入流程,Oracle数据库(旧)空间数据表创建与数据导入流程说明V2.0
  2. LeetCode11:Container With Most Water
  3. 区块链BaaS云服务(15)复杂美chain33
  4. 【蓝桥杯Java_C组·从零开始卷】第五节(二)、BigDecimal的使用
  5. java web服务_将Java服务公开为Web服务
  6. MySQL数据处理之增删改,MySQL8新特性计算列,完整详细可收藏
  7. cocos2d-x学习之自动内存管理
  8. 没有基础的人可以学python吗-无基础可以学习Python吗?
  9. 基于JDBC的数据库连接池高效管理策略
  10. Java学习之路 之 使用技巧篇
  11. 困扰我两天的问题(nginx配置好ssl证书,https却不能访问)
  12. python的注释符号有哪些_python注释符号
  13. WORDPRESS优化技巧之CDN加速
  14. fifa15服务器位置,FIFA15球队战术位置技巧
  15. [转载]实时 Java,第 4 部分: 实时垃圾收集
  16. win10环境下c语言打开文件失败,cfile fopen fopen_s win10下打开文件失败
  17. ef mysql 约定_EF 数据库连接约定(Connection String Conventions in Code First)
  18. 搜狗微信列表页数据采集之跳过验证码
  19. 【Jmeter】并发测试接口
  20. B2B制造业电商网站开发,整合提高机械设备市场资源配置效率

热门文章

  1. 实时流媒体视频监控系统——的流媒体客户端——视频解码处理
  2. 在线Excel框架——luckysheet
  3. WIN10 Redis安装与使用
  4. android微信个人界面设计,安卓版微信主界面的再设计
  5. 中国自己的matlab,创建matlab中中国的holidays函数
  6. 杀病毒软件和防火墙区别
  7. ANOMALY: use of REX.w is meaningless (default operand size is 64)idea无法集成git问题 已解决
  8. ASP.NET MVC俗气的罗斯文示例代码
  9. Ubuntu20.04的主题美化
  10. 大败局:知名企业的失败教训