如何解决layer弹出层中H5播放器全屏出错


当前第2页 返回上一页

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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

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来控制,实现铺满

举个栗子

1

2

3

4

5

<p 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>

</p>

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

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

1

2

3

4

5

<p 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>

</p>

1

2

3

4

5

6

7

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;

 }

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

html5和css3以及jquery实现音乐播放器

关于HTML5中video标签浏览器兼容性增强的方案分享

以上就是如何解决layer弹出层中H5播放器全屏出错的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

html怎么隐藏播放器

h5同层video播放器接入实例分享

css怎么设置背景图片布满全屏

如何解决html5微信播放全屏问题

layer和bootstrap的区别

如何解决layer弹出层中h5播放器全屏出错

layui打开的layer的iframe窗口怎么关闭

利用html5自定义实现播放器代码分享

怎样实现h5微信播放全屏

html背景图片怎么全屏

更多相关阅读请进入《layer》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...