H5内联视频总结
概述
之前写过h5内联视频,总结了一下当时做微信视频类h5的心得,随着工作中越来越多的接触h5,我有了更多的心得与经验,记下来供以后开发时参考,相信对其他人也有用。
内联视频的播放
内联视频需要用户主动触发才能播放,最常见的是在loading界面之后会有一个按钮来触发内联视频播放。(网上说的WeixinJSBridgeReady试过了并不管用,因为这个是旧的jssdk,又查到可以用wx.ready()方法,没有试过。)
白名单机制
微信有一个白名单机制,(付费)加入白名单的域名能够享有这个特权:安卓端的内联视频不需用X5浏览器渲染就能自动内联,而且和ios端一模一样。
所以加入白名单的域名下的h5中的内联视频需要删去下面2条属性:
x5-video-player-type="h5" x5-video-player-fullscreen="true"
另外,XXX.qq.com即qq域名自动无条件加入白名单。
内联与全屏
虽然说是内联视频,但是在安卓X5浏览器中播放的时候会自动全屏!但是在ios浏览器中播放的时候不是全屏(会有顶条)。如何去除顶条?方法是在ios浏览器中启用全屏,即去掉playsinline属性使内联视频变成全屏视频(缺点是会有视频控制条)。
另外,由于在安卓X5浏览器中播放的时候会自动全屏(加入白名单的域名除外),所以一般H5中的内联视频都是全屏并不是“内联”的,然后在全屏视频上覆盖一层html元素即可。
多个内联视频
在安卓端X5浏览器中,不支持多个内联形式的video标签,一旦有一个内联形式的video标签,其它内联形式的video标签会自动变成非内联,甚至会把第一个video标签变成非内联。
内联与音频
在安卓端X5浏览器中,如果在播放内联视频的同时播放音频,会自动停止内联视频!!!
总结
视频类H5在安卓端坑太多,使用的时候需谨慎,目前想到如下解决方法:
- 付费进入白名单。
- 使用canvas。
- 使用图片和视差模拟简单视频。
H5内联视频总结的更多相关文章
- H5内联视频
概述 微信上很多H5页面都会有会动的像视屏的页面,这样的效果很棒.从技术上来说,这个其实就是视屏,不过没有控制播放的按钮罢了.它们还有一个专业的名字--内联视频.下面我把自己对内联视屏的学习记录下来, ...
- H5 内联 SVG
HTML5 内联 SVG HTML5 画布 HTML5 画布 vs SVG HTML5 支持内联 SVG. 什么是SVG? SVG 指可伸缩矢量图形 (Scalable Vector Graphics ...
- 微信小程序内联h5页面,实现分享
在小程序内直联h5的页面(pages/webview/webview.js),该页面为<web-view>的容器,使用<web-view>组件 <web-view wx: ...
- 第48天学习打卡(HTML 行内元素和块元素 列表 表格 视频和音频 页面结构分析 iframe内联框架 表单语法 )
行内元素和块元素 块元素 无论内容多少,该元素独占一行 (p.h1-h6) 行内元素 内容撑开宽度,左右都是行内元素的可以排在一行 (a.strong.em...) 列表 什么是列表 ...
- CSS3与页面布局学习总结(二)——Box Model、边距折叠、内联与块标签、CSSReset
一.盒子模型(Box Model) 盒子模型也有人称为框模型,HTML中的多数元素都会在浏览器中生成一个矩形的区域,每个区域包含四个组成部分,从外向内依次是:外边距(Margin).边框(Border ...
- 学习笔记——关于HTML(含HTML5)的块级元素和行级(内联)元素总结
1.首先我们要知道什么是块级元素和行级(内联)元素? 块级(block)元素的特点: ①总是在新行上开始: ②高度,行高以及外边距和内边距都可控制: ③宽度缺省是它的容器的100%,除非设定一个宽度: ...
- 关于HTML(含HTML5)的块级元素和行级(内联)元素总结
1.首先我们要知道什么是块级元素和行级(内联)元素? 块级(block)元素的特点: ①总是在新行上开始: ②高度,行高以及外边距和内边距都可控制: ③宽度缺省是它的容器的100%,除非设定一个宽度: ...
- Css中的两个重要概念:块状元素和内联元素
一.display:block display:block就是将元素显示为块级元素,一般是其他元素的容器,可容纳内联元素和其他块状元素,块状元素排斥其他元素与其位于同一行,宽度(width)高度(he ...
- web兼容学习分析笔记--块级、内联、内联块级元素
一.块级.内联.内联块级元素 (1)块级元素:block **独占一行 **可设置width,height,margin,padding **内部可包含块级或内联元素 (3)内联(行内)元素:inli ...
随机推荐
- linux内存黑洞
1.问题 k8s集群中node节点的内存使用率居高不下,使用率达到90%多.通过以下命令可以发现此虚拟机分配的内存为15g,但是用户进程使用的内存总共为7个多g,并且slab和pageTables使用 ...
- import os, glob, fnmatch--Python os/glob/fnmatch主要函数总结
auther: Lart date: 2019-01-17 update: 2019-01-18 09:55:36 --- import os, glob, fnmatch 针对某些操作, 官方推荐这 ...
- pytest 一.安装和使用入门
pytest --fixtures Python版本: Python 2.7.3.4.3.5.3.6.Jython.PyPy-2.3 平台:Unix / Posix和windows PyPI包名称:p ...
- 文件比较命令(fc)
fc命令: // 描述: 比较两个文件或文件集,并显示它们之间的差异.相对于 comp 命令来说,这个 fc 命令显示的界面就好看多了.用起来也舒服些. fc: (file comparison) f ...
- linux端口详解大全
0|无效端口,通常用于分析操作系统 1|传输控制协议端口服务多路开关选择器 2|管理实用程序 3|压缩进程 5|远程作业登录 7|回显 9|丢弃 11|在线用户 13|时间 17|每日引用 18|消息 ...
- mybatis中怎样使用having?
1.dao层代码 List<ErgTipSimpleBo> queryListMore(@Param("typeId") Integer typeId,@Param(& ...
- git的使用方式总结
1.先用 git clone url 克隆下来项目 2.查看下载的项目里面有没有一个名字叫git的文件夹 3.用git branch查看当前所有的本地分支,绿色的代表当前所处的分支 4.若本地只有一个 ...
- H5新特性——--第三方绘图工具库 echarts(canvas)---SVG绘图
今天学习的内容 3.1:h5新特性---第三方绘图工具库 echarts(canvas) 百度 echarts;d3;two.js;.... 3.2:h5新特性---SVG绘图 3.2:h5新特性-- ...
- 用pandas库修改excel文件里的内容,并把excel文件格式存为csv格式,再将csv格式改为html格式
假设有Excel文件data.xlsx,其中内容为: ID age height sex weight张三 1 39 181 female 85李四 2 ...
- 安装jdk+tomcat
linux安装高版本jdk后不起作用的解决办法 1.安装jdk1.8. 2.修改/etc/profile中的JAVA_HOME为新的jdk路径,并执行source /etc/profile. 3.执 ...