微信iphone7、 ios10播放视频解决方案 2016.11.10
2017.09.15更新android 自动播放,无控制条,可以设置层级
请查看 http://www.cnblogs.com/luoeeyang/p/7524824.html
2016.11.10日更新以下方法
微信最新出同层播放规范
即使是官方的也无法解决所有android手机的问题。
另外iphone 5 、5s 某些手机始终会弹出播放,请继续采用 “以下是老的解决办法”

文档下载地址:
http://pan.baidu.com/s/1i5uN9Al
==================================以下是老的解决办法======================================
目前主要问题出现在IP7,IOS10的 视频播放问题:主要表现为 无法播放,黑屏,只有声音
以下做法可以解决以上问题:(safira下也可以内嵌播放)
请熟读以下代码,不要直接拿去就用 (完整文件包下载 在文末)
div 请自行引入jQuery 或zepto
<div id="vdBox" class="abs" style="top:0px;width:640px; height:1040px; overflow:hidden; background:#000;">
<canvas id="vdCvs" class="abs" width="640" height="1040"></canvas>
<video id="vdDom" class="abs" webkit-playsinline muted style="display:none;top:0px;"><source type="video/mp4"></video>
</div>
<button id="pp" class="abs" style="top:480px; width:640px; height:60px; font-size:24px; display:none;" >无法自动播放时出现:点我播放</button>
js
function cvPlayer(_vd,_cvs,_fps,_autoPlay,_src)
{
var _s=this;
var ios,ua=navigator.userAgent.toLowerCase(); _s.play=function()
{
if(ios)
{
_s.vd.load();
_s.ad.play(); inter=setInterval(function()
{
_s.vd.currentTime=_s.ad.currentTime>0.1?_s.ad.currentTime:0.1;
ctx.clearRect(0,0,640,1040);
ctx.drawImage(_s.vd,0,0,640,1040);
if(_s.vd.currentTime>=_s.vd.duration)
{
_s.endF();
}
},1000/_fps);
//IOS无法自动播放
if(_s.ad.paused){$("#pp").css("display","block");}
}
else
{
_s.vd.play();
//Android无法自动播放
if(_s.vd.paused){$("#pp").css("display","block");} else{_s.vd.style.display="block";}
}
$("#vdBox").css("visibility","visible");
}
_s.pause=function()
{
ios?_s.ad.pause():_s.vd.pause();
}
_s.endF=function(e)
{
if(ios)
{
clearInterval(inter);
document.getElementById(_vd).getElementsByTagName("source")[0].setAttribute("src","");
document.getElementById("_cvsAud").remove();
}
else
{
$("#"+_vd).css("display","none");
}
$("#vdBox").css("visibility","hidden"); alert("end")
} if(ua.indexOf("android")>=0||ua.indexOf("mobile")<0)
{
$("#"+_vd).attr("src",_src+"_l.mp4")
$("#"+_vd).css({"width":640,"height":1210}) _s.vd=document.getElementById(_vd);
_s.vd.addEventListener("ended",_s.endF) ;
}
else
{
document.getElementById(_vd).getElementsByTagName("source")[0].setAttribute("src",_src+".mp4")
_s.vd=document.getElementById(_vd);
_s.ad=document.createElement('audio');
_s.ad.setAttribute("id","_cvsAud");
_s.ad.innerHTML = _s.vd.innerHTML;
_s.vd.parentNode.insertBefore(_s.ad, _s.vd);
_s.vd.currentTime=0.1
var inter;
var ctx=document.getElementById(_cvs).getContext("2d")
ios=true;
} _autoPlay?_s.play():null return this;
}
代码包:(包里的视频压缩比较大有点糊)
http://pan.baidu.com/s/1o7ZCrQ6
不保证哪天微信更新或系统更新后又失效。如果有问题,请留言
微信iphone7、 ios10播放视频解决方案 2016.11.10的更多相关文章
- 2016/11/10 吃吃喝喝Hacking Thursday Night聚餐活动 at Dunkin Donuts
店名:Dunkin Donuts 唐恩都乐 点评:http://www.dianping.com/shop/21378231 地址:静安区南京西路1649号静安公园内(近静安公园) 走法:地铁2号线静 ...
- Qt(MinGW版)在win7 64位上无法播放视频解决方案
[原因分析] Qt自带的MinGW是32位版本,不支持64位的ffmpeg(解码器). 无法播放视频,问题就出在opencv_ffmpeg2411_64.dll(opencv\bin\)上. [解决方 ...
- vivo 手机 video 标签无法播放视频解决方案
1. 针对 vivo 手机单独设置 video 标签加上 controls 此时video 可以点击播放,但是有进度条存在. 2. 将 video 隐藏,用一张图片定位在在 video 所在的位置,点 ...
- 微信浏览器video播放视频踩坑
video属性介绍 iOS的属性 playsinline On iPhone, video playsinline elements will now be allowed to play inlin ...
- 微信Android自动播放视频(可交互,设置层级,无控制条,非X5)ffmpeg,jsmpeg.js,.ts视频
原料: ffmpeg : http://ffmpeg.zeranoe.com/builds/ win64 https://evermeet.cx/ffmpeg/ mac OS X 64 jsmp ...
- 微信小程序播放视频发送弹幕效果
首先.先来看一下效果图 然后.再看一下官方文档API对video的说明 相关属性解析: danmu-list:弹幕列表 enable-danmu:是否显示弹幕 danmu-btn:弹幕按钮 contr ...
- HTML之微信全屏播放视频
不废话,上代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...
- 微信小程序播放视频
<view class="section tc"> <video id="myVideo" src="http://wxsnsdy. ...
- 2016.11.10 Could not get JDBC Connection; nested exception is java.sql.SQLException: No suitable driver
运行项目rds_web时,出现错误提示:Could not get JDBC Connection; nested exception is java.sql.SQLException: No sui ...
随机推荐
- windows2008吃尽内存的解决办法
最近才用上windows2008,之前一直用的是windows2003,发现系统运行一段时间后,内存吃紧,赶紧打开资源查看器,发现当前运行的程序占有内存都很小,后经查资料,原来是被windows200 ...
- 灵活运用SQL Server SSIS变量
在SSIS开发ETL(Extract-Transform-Load),数据抽取.转换.装载的过程.我们需要自己定义变量 一.SSIS变量简介 SSIS(SQL Server Integration S ...
- GPS部标监控平台的架构设计(八)-基于WCF的平台数据通信设计
总体来讲,GPS部标平台的软件开发是一个对网络通信和应用程序之间通信的技术应用密集型的开发工作,也是有一定设计技术含量的工作. 1.设计通信接口 在设计的时候,根据职责划分,拆分成不同的应用子系统,对 ...
- iPad Pro分辨率
iPad Pro分辨率 为 2732 x 2048
- IOS遍历方式
NSArray* arrays = @[@"1",@"2",@"3",@"4",@"5",@&quo ...
- arrayToJson将数组转化为json格式的js代码 ///////////////////////zzzzzzzzzzzzzzzz
//去除空格 function trim(str) { return str.replace(/\s|\xA0/g,""); } /** *js数组转json * */ fun ...
- 。。。欢乐捕鱼App WeX5 连接打包代理服务失败,请检查代理服务地址是否正确。。。
今天学习了WeX5,第一次使用,使用它打包一个Web App 欢乐捕鱼的时候,在最终打包生成Native App的时候突然报错了,说:"连接打包代理服务失败,请检查代理服务地址是否正确&qu ...
- Html5shiv
说明编辑 越来越多的站点开始使用 HTML5 标签.但情况是还有很多人在使用IE6,IE7,IE8.为了让所有网站浏览者都能正常的访问网站, 2解决方案编辑 有下面两个: 为网站创建多套模板,通过程序 ...
- Select For update语句浅析 (转)
Select … for update语句是我们经常使用手工加锁语句.通常情况下,select语句是不会对数据加锁,妨碍影响其他的DML和DDL操作.同时,在多版本一致读机制的支持下,select语句 ...
- ThinkPad E430光驱面板拆卸方法
前一阵买了固态硬盘,拆出来的机械硬盘一直放在一边落灰.想着不能这么浪费资源,就买了光驱硬盘架,打算把光驱拆出来换上机械硬盘. 光驱很好拆,把后盖板打开之后,拧下固定的螺丝,用螺丝刀轻轻撬一下,光驱就出 ...