前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >layer弹出层中H5播放器全屏出错解决 & 属性poster底图占满video的方法

layer弹出层中H5播放器全屏出错解决 & 属性poster底图占满video的方法

作者头像
书童小二
发布于 2018-09-03 11:26:41
发布于 2018-09-03 11:26:41
2.3K00
代码可运行
举报
文章被收录于专栏:前端儿前端儿
运行总次数:0
代码可运行

1.

在layer弹窗组件中

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

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

举个栗子

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4   <meta charset="utf-8">
 5   <title></title>
 6   <script src="http://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.min.js"></script>
 7   <script src="layer/layer.js"></script>
 8 
 9   <style>
10 
11   </style>
12 </head>
13 <body>
14 <h1>我是字</h1>
15 <div id="box">
16 <video id="video" controls preload="auto" width="400px" height="300px">
17   <source src="http://movie.ks.js.cn/flv/other/1_0.mp4" type="video/mp4">
18 </video>
19 </div>
20 
21 <script>
22 
23   layer.open({
24     type: 1,
25     title: false,
26     shadeClose: true,
27     area: ['400px', '350px'],
28     content: $('#box'),
29     success: function(layero){
30     }
31   });
32 
33 </script>
34 </body>
35 </html>

可以看到全屏不正常了

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

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
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来控制,实现铺满

举个栗子

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<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并将其覆盖住

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<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>
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
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; 
    }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-02-20 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
腾讯云 Web 超级播放器开发实战
腾讯云 Web 超级播放器 TCPlayer 可实现在手机浏览器和 PC 浏览器上播放音视频流的问题,功能强劲,兼容性好,可以不依赖用户安装 App,就能进行播放。
初九之潜龙勿用
2024/06/20
3830
layui的layer弹出层和form表单
如果想用layui来完成增删改查,那么要会用弹出层和form表单这两个组件是必须的,所以今天就来介绍一些如何用layui完成基本的增删改查
全栈程序员站长
2022/09/14
5.1K0
layui的layer弹出层和form表单
超强H5视频播放器!!!
大家好,我是开源小妹!今天给大家介绍一款强大的HTML5视频播放插件。现在在网页中插入视频的需求越来越多了,自己写的话则需要考虑以下问题:
永恒君
2022/12/06
2.1K0
超强H5视频播放器!!!
layui框架——弹出层layer[通俗易懂]
Array:例如title: [‘文本’, ‘font-size:18px;’],数组第二项可以写任意CSS样式
全栈程序员站长
2022/08/18
13.7K0
layui框架——弹出层layer[通俗易懂]
video.js调用
>  一、总结(点击显示或隐藏总结内容) 一句话总结: 网上有各种细致的现成的代码可以拿来用,没必要自己死专 1、video.js有两种初始化方式? 一种是在video的html标签之中 一种是使用j
kirin
2020/06/22
32.5K0
videojs播放器插件使用详解
HLS是苹果公司实现的基于 HTTP 的流媒体传输协议,全称 HTTP Live Streaming,可支持流媒体的直播和点播,主要应用在 iOS 系统,为 iOS 设备(如 iPhone、iPad)提供音视频直播和点播方案。
菲宇
2020/04/16
53.7K2
手写一个抖音视频去水印工具,千万别刚一个程序员
有天晚上她在抖音看见一个非常具有 教育意义 的视频,“男人疼媳妇就该承包全部家务活”,然后它就想把视频下载下来,分享到她的姐妹群交流 驭夫 心得。
程序员小富
2020/09/17
1.6K0
手写一个抖音视频去水印工具,千万别刚一个程序员
基于video.js来实现vue的视频播放功能
video.js是一个很好的视频播放插件,但是如果移植到vue上相信很多小伙伴很苦恼,是不是网上搜了一堆,发现不好使,我也是踩坑了,后来发现官方文档上就有,好尴尬,建议以后学习先看看官方文档,会有惊喜的。 1.首先安装video.js,然后在main.js中引入
李维亮
2021/07/08
15K0
weex-14-video组件使用
下面是一个网络视频地址 http://flv2.bn.netease.com/videolib3/1611/01/XGqSL5981/SD/XGqSL5981-mobile.mp4
酷走天涯
2018/09/14
1.1K0
weex-14-video组件使用
用video标签流式加载
浏览器的video标签通常是接收一个src属性,然后浏览器就会根据这个src属性来自动加载视频。 这个过程是浏览器来加载video的。
smy
2019/04/21
4.1K0
Video里的poster填满窗口的方案
用Video播放视频,视频能自适应屏幕大小,但是它的Poster(海报封面)继承了原尺寸比例,无法自动缩放或拉伸,不得技巧的话,很难处理。
IT晴天
2018/08/20
2K0
网页上播放视频的免费的播放器_CKPlayer
今天在工作的过程中遇到一个功能:在网页中加入视频播放器,类似于我们经常看到的优酷,爱奇艺等视频网站的功能。
Hongten
2018/09/13
13.6K0
网页上播放视频的免费的播放器_CKPlayer
视频H5 video最佳实践
随着 4G 的普遍以及 WiFi 的广泛使用,手机上的网速已经足够稳定和高速,以视频为主的 HTML5 也越来越普遍了,相比帧动画,视频的表现更加丰富,这里介绍一些实践经验。
gnip
2020/10/28
4.8K0
手把手从零开始---封装一个vue视频播放器组件
现在,在网页上播放视频已经越来越流行,但是网上的资料鱼龙混杂,很难找到自己想要的,今天小编就自己的亲身开发体验,手把手从零开始—封装一个vue视频播放器组件。
马克社区
2022/04/28
4K0
FFmpeg推流到Nginx并使用播放器播放
如今直播很火,下面就简单分享下我是如何直播的。必备工具:FFmpeg,Nginx,还有一个播放器。之前在实例解析中分享过如何用FreeSWITCH来做直 播,这次分享下如何用FFmpeg配合Nginx做直播。
杜金房
2020/12/21
1.9K0
如何开发一款 H5 小程序直播?
大前端这几年算是一个热词,对于前段来说如果不是大前端,技术相对来说就已经算是落后了。如果还停留在对ES6,Vue这些基本技能的学习只能说处于一个及格线。
Nealyang
2021/01/14
3.7K0
如何开发一款 H5 小程序直播?
【HTML5】HTML5 多媒体标签 ② ( 视频标签 <video> | 视频标签常见属性 | autoplay 属性 | controls 属性 | poster 属性 | 设置多个格式视频 )
HTML 5 的 <video> 视频标签 , 支持 ogg / mpeg 4 ( mp4 ) / webM 三种格式的音频 , 不同的浏览器支持的音频格式不同 ;
韩曙亮
2023/04/24
3.2K0
【HTML5】HTML5 多媒体标签 ② ( 视频标签 <video> | 视频标签常见属性 | autoplay 属性 | controls 属性 | poster 属性 | 设置多个格式视频 )
videojs插件使用「建议收藏」
使用整理:使用主要针对于移动端视频播放,考虑的点:视频显示适配手机宽度;适配定义样式;在微信端,安卓、ios视频空间控件不同,定制等会自动被微信视频控件覆盖;播放过程中定制暂停/播放按钮事件等;播放结束后定制重播、下一个视频事件,读秒播放下一个视频
全栈程序员站长
2022/11/01
10.7K0
简易网页音乐播放器
简介与要点:在网页上制作一个音乐播放器我们仅需用到一个新的标签<audio src=”素材音乐” controls></audio>;因为我们这个音乐播放不是单曲循环的使用还要用到jQuery插件做一个下拉框式的选择切换功能,所以依旧要使用到jQuery插件;使用jQuery建立一个动态生成的歌曲选择器,再用jQuery设置点击事件或者焦点失去事件,只要能触发下面的切换效果就行
全栈程序员站长
2022/09/13
3K0
简易网页音乐播放器
05. Web大前端时代之:HTML5+CSS3入门系列~H5 多媒体系
Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 源码案例 :https://github.com/dunitian/LoTHTML5 1.引 入 概述 音频文件或视频文件都可以看做是一个容器文件(类似于压缩的zip) 编解码器就是读取特定的容器格式,对其中的音频与视频轨进行解码,然后实现播放 解码器 解码器(decoder),是一种输入模拟视频信号并将它转换为数字信号格式,以进一步压缩和传输的硬件/软件
逸鹏
2018/04/09
8190
05. Web大前端时代之:HTML5+CSS3入门系列~H5 多媒体系
相关推荐
腾讯云 Web 超级播放器开发实战
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验