安卓版微信中播放视频不自动全屏
设置安卓视频不全屏播放(不知道是不是全部安卓机型都支持)的方法
前两天做了一个石头剪刀布的视频游戏项目,测试过程中找到了更加简便的方法,分享下,如下设置HTML代码:
<video id="videoID" controls src="demo.mp4" poster="demo.jpg" preload="auto" x-webkit-airplay="true" x5-playsinline="true" webkit-playsinline="true" playsinline="true"></video>
安卓设置属性:
x5-playsinline="true"
实测,不可加以下属性设置,否则还是会跳出黑底全屏播放
x5-video-player-type='h5' x5-video-player-fullscreen='true'
注意的细节就是,(只是安卓机)当视频播放后:
1、它的层级比较高,当有设置定位的弹层显示后,即使设置z-index层级特别高,还是会被播放过的视频挡住的(我这边解决方法就是当显示弹层时隐藏视频,关闭弹层再显示视频),也就是说此视频不可设置被其它元素遮挡,它永远是在最上层的
2、如果有背景音乐播放时,当视频播放后,背景音乐自动停止且不会在视频播放完后再继续播放
IOS设置属性:
webkit-playsinline="true" playsinline="true"
使用canvas解决:
安卓微信中播放视频时总是会自动在新窗口全屏播放视频,而且播放结束后自动推送多个视频列表展示给用户选择,但有时候我们就是需要视频能够局部区域播放
下面贴出解决办法:
1、HTML中
① 给video标签增加属性,使浏览器调用h5原生video
<video id="testVideo" x5-video-player-type='h5' x5-video-player-fullscreen='true'>
②在页面中添加canvas画布
<canvas id="testCanvas"></canvas>
2、CSS中,使video隐藏
video{display:none}
3、js代码配置
/*以下是渲染CANVAS画布中的视频*/
//获取video
var TestVideo=document.getElementById("testVideo");
//获取canvas画布
var TestCanvas=document.getElementById("testCanvas");
//设置画布
var TestCanvas2D=TestCanvas.getContext('2d');
//设置setinterval定时器
var TestVideoTimer=null;
//监听播放
TestVideo.addEventListener('play',function() {
TestVideoTimer=setInterval(function() {
TestCanvas2D.drawImage(TestVideo,0,0,videoW,videoH);
},20);
},false);
//监听暂停
TestVideo.addEventListener('pause',function() {
clearInterval(TestVideoTimer);
},false);
//监听结束
TestVideo.addEventListener('ended',function() {
clearInterval(TestVideoTimer);
},false);
测试的demo中,对安卓和苹果手机进行了判断,因为大家应该都知道,苹果手机在播放视频时设置video的playsinline="true"属性后,视频就可以局部区域播放了,界面友好,而安卓则比较让人头痛,所以只需对安卓机进行以上(HTML/CSS/JS)设置即可
前两天做了一个石头剪刀布的视频游戏项目,测试过程中找到了更加简便的方法,分享下,如下设置HTML代码:
<video id="videoID" controls src="demo.mp4" poster="demo.jpg" preload="auto" x-webkit-airplay="true" x5-playsinline="true" webkit-playsinline="true" playsinline="true"></video>
安卓设置属性:
x5-playsinline="true"
实测,不可加以下属性设置,否则还是会跳出黑底全屏播放
x5-video-player-type='h5' x5-video-player-fullscreen='true'
注意的细节就是,(只是安卓机)当视频播放后:
1、它的层级比较高,当有设置定位的弹层显示后,即使设置z-index层级特别高,还是会被播放过的视频挡住的(我这边解决方法就是当显示弹层时隐藏视频,关闭弹层再显示视频),也就是说此视频不可设置被其它元素遮挡,它永远是在最上层的
2、如果有背景音乐播放时,当视频播放后,背景音乐自动停止且不会在视频播放完后再继续播放
IOS设置属性:
webkit-playsinline="true" playsinline="true"
使用canvas解决:
安卓微信中播放视频时总是会自动在新窗口全屏播放视频,而且播放结束后自动推送多个视频列表展示给用户选择,但有时候我们就是需要视频能够局部区域播放
下面贴出解决办法:
1、HTML中
① 给video标签增加属性,使浏览器调用h5原生video
<video id="testVideo" x5-video-player-type='h5' x5-video-player-fullscreen='true'>
②在页面中添加canvas画布
<canvas id="testCanvas"></canvas>
2、CSS中,使video隐藏
video{display:none}
3、js代码配置
/*以下是渲染CANVAS画布中的视频*/
//获取video
var TestVideo=document.getElementById("testVideo");
//获取canvas画布
var TestCanvas=document.getElementById("testCanvas");
//设置画布
var TestCanvas2D=TestCanvas.getContext('2d');
//设置setinterval定时器
var TestVideoTimer=null;
//监听播放
TestVideo.addEventListener('play',function() {
TestVideoTimer=setInterval(function() {
TestCanvas2D.drawImage(TestVideo,0,0,videoW,videoH);
},20);
},false);
//监听暂停
TestVideo.addEventListener('pause',function() {
clearInterval(TestVideoTimer);
},false);
//监听结束
TestVideo.addEventListener('ended',function() {
clearInterval(TestVideoTimer);
},false);
测试的demo中,对安卓和苹果手机进行了判断,因为大家应该都知道,苹果手机在播放视频时设置video的playsinline="true"属性后,视频就可以局部区域播放了,界面友好,而安卓则比较让人头痛,所以只需对安卓机进行以上(HTML/CSS/JS)设置即可
- 相关阅读
- 双击文字后实现编辑文本功能
- 利用ResponseXML的方法调用163天气预报
- 利用java客户端静态页面玩分页
- 兼容IE和FF的收藏本站、设为首页代码
- 连云港汽车门户网站
- 微信小程序-接入广告
- 发布重大事件说明
- 网页制作中注意应用HTML标签的问题
- 共有0条关于《安卓版微信中播放视频不自动全屏》的评论
- 发表评论
正在加载评论......
返回顶部发表评论
网友评论声明,请自觉遵守互联网相关政策法规。
您发布的评论即表示同意遵守以下条款:
一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家、社会、集体和公民的合法权益;
二、不得发布国家法律、法规明令禁止的内容;互相尊重,对自己在本站的言论和行为负责;
三、本站对您所发布内容拥有处置权。
- 更多>>同类信息
- dw里面查找替换使用正则删除sqlserver里面的CONSTRAINT
- javascript获取浏览器指纹可以用来做投票
- 火狐Mozilla Firefox出现:无法载入您的Firefox配置文件 它可能已经丢失 或是无法访问 问题解决集合处理办法
- DW设置之后更好用 DreamweaverCS编辑GB2312与UTF-8文件在代码视图中点击鼠标错位问题的解决办法
- js指定日期加n天加n月加n年
- jquery中动态生成的代码使用on hover事件时不出现效果
- 更多>>最新添加文章
- dw里面查找替换使用正则删除sqlserver里面的CONSTRAINT
- Android移动端自动化测试:使用UIAutomatorViewer与Selenium定位元素
- 抖音直播音挂载小雪花 懂车帝小程序
- javascript获取浏览器指纹可以用来做投票
- 火狐Mozilla Firefox出现:无法载入您的Firefox配置文件 它可能已经丢失 或是无法访问 问题解决集合处理办法
- 在Android、iOS、Windows、MacOS中微信小程序的文件存放路径
- python通过代码修改pip下载源让下载库飞起
- python里面requests.post返回的res.text还有其它的吗