全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

layer弹出层中H5播放器全屏出错的解决方法

1.

在layer弹窗组件中

如果使用了flash播放器,全屏是正常的

但若使用了HTML5的播放器,全屏失效

举个栗子

<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <title></title>
 <script src="http://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.min.js"></script>
 <script src="layer/layer.js"></script>
 <style>
 </style>
</head>
<body>
<h1>我是字</h1>
<div id="box">
<video id="video" controls preload="auto" width="400px" height="300px">
 <source src="http://movie.ks.js.cn/flv/other/1_0.mp4" type="video/mp4">
</video>
</div>
<script>
 layer.open({
 type: 1,
 title: false,
 shadeClose: true,
 area: ['400px', '350px'],
 content: $('#box'),
 success: function(layero){
 }
 });
</script>
</body>
</html>

可以看到全屏不正常了

通过调试发现是这个class的处理影响了全屏的展示

所以,目前的解决办法是在layer层创建之后,移除这个class即可(注意在success回调中置于下一轮事件循环)

layer.open({
 type: 1,
 title: false,
 shadeClose: true,
 area: ['400px', '350px'],
 content: $('#box'),
 success: function(layero){
  console.log(layero)
  // hack处理layer层中video播放器全屏样式错乱问题
  setTimeout(function() {
  // $(layero).removeClass('layer-anim');
  }, 0);
 }
 });

2.

video标签的poster属性指代视频未播放前放置的一张图片

如果video容器宽高小于等于poster图的宽高,则图片能充满容器,反之容器左右就会预留黑色栏

除了手动更换一张大图之外,可以结合CSS来控制,实现铺满

举个栗子

<div id="box">
 <video id="video" controls preload="auto" width="700" height="300" poster="../poster.png" >
  <source src="http://movie.ks.js.cn/flv/other/1_0.mp4" type="video/mp4">
 </video>
</div>

现在图片宽度比容器小,没铺满,参考这里的讨论 可以用CSS让其撑开(这里相当于放大了,不想放大需自行更换大图)

poster里放一个透明图片(这里使用了一个1px*1px的base64格式透明图片),再用css定义video的background并将其覆盖住

<div id="box">
 <video id="video" controls preload="auto" width="700" height="300" poster="data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQImWNgYGBgAAAABQABh6FO1AAAAABJRU5ErkJggg==" >
  <source src="http://movie.ks.js.cn/flv/other/1_0.mp4" type="video/mp4">
 </video>
</div>
video {
  background: transparent url('../poster.png') no-repeat 0 0; 
  -webkit-background-size: cover; 
   -moz-background-size: cover; 
    -o-background-size: cover; 
    background-size: cover; 
 }

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# layer  # 全屏  # h5播放器全屏  # 播放器  # layer弹出层框架alert与msg详解  # jQuery、layer实现弹出层的打开、关闭功能  # web 前端常用组件之Layer弹出层组件  # jQuery Layer弹出层传值到父页面的实现代码  # jQuery使用Layer弹出层插件闪退问题  # 详解Layer弹出层样式  # layer实现关闭弹出层刷新父界面功能详解  # 使用了  # 举个  # 铺满  # 我是  # 就会  # 是在  # 可以用  # 可以看到  # 大了  # 再用  # 不正常  # 解决办法  # 回调  # 让其  # 移除  # 里放  # 下一轮  # 层中 


相关文章: 宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?  建站之星导航如何优化提升用户体验?  网站图片在线制作软件,怎么在图片上做链接?  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  宝塔建站后网页无法访问如何解决?  如何快速使用云服务器搭建个人网站?  如何在香港免费服务器上快速搭建网站?  安云自助建站系统如何快速提升SEO排名?  如何快速生成专业多端适配建站电话?  建站主机解析:虚拟主机配置与服务器选择指南  建站10G流量真的够用吗?如何应对访问高峰?  表情包在线制作网站免费,表情包怎么弄?  名字制作网站免费,所有小说网站的名字?  山东云建站价格为何差异显著?  如何通过WDCP绑定主域名及创建子域名站点?  建站之星上传入口如何快速找到?  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  建站之星Pro快速搭建教程:模板选择与功能配置指南  建站中国官网:模板定制+SEO优化+建站流程一站式指南  建站之星2.7模板快速切换与批量管理功能操作指南  Android滚轮选择时间控件使用详解  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  湖北网站制作公司有哪些,湖北清能集团官网?  太平洋网站制作公司,网络用语太平洋是什么意思?  岳西云建站教程与模板下载_一站式快速建站系统操作指南  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  中山网站推广排名,中山信息港登录入口?  正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?  子杰智能建站系统|零代码开发与AI生成SEO优化指南  导航网站建站方案与优化指南:一站式高效搭建技巧解析  潍坊网站制作公司有哪些,潍坊哪家招聘网站好?  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  建站之星安装模板失败:服务器环境不兼容?  如何在自有机房高效搭建专业网站?  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  如何高效利用亚马逊云主机搭建企业网站?  公司网站设计制作厂家,怎么创建自己的一个网站?  广东企业建站网站优化与SEO营销核心策略指南  建站之星24小时客服电话如何获取?  如何快速搭建FTP站点实现文件共享?  建站之星安装需要哪些步骤及注意事项?  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  制作网站的模板软件,网站怎么建设?  如何撰写建站申请书?关键要点有哪些?  阿里云网站制作公司,阿里云快速搭建网站好用吗?  如何选择适配移动端的WAP自助建站平台?  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  高性能网站服务器部署指南:稳定运行与安全配置优化方案 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。