html5 video移动开发一

本文介绍如何在微信公众号中优化视频监控体验,包括调整video标签的CSS样式去除默认控制条,实现视频全屏浏览及操作,以及针对iOS和Android平台的特殊处理方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

业务场景:微信公众号使用,通过video,取流实时浏览视频监控画面,能支持云台等一些操作,在手机上能全屏浏览并操作


视频显示位置css样式
object-fit: contain;//视频画面显示为原始比例,并且宽或高有一方铺满
object-position: left;//视频显示位置

//不显示video默认控制条controls,浏览器不同支持去掉controls的方法也不同
第一种,移动端设置css样式
video::-webkit-media-controls {
    display:none !important;
}

第二种,移除video标签controls属性 

第三种,js设置video controls为false
var video=document.getElementById("myPlayer");
video.controls=false;
video早先在android或ios浏览器中,都处于页面最顶层,没有办法被遮盖,一触发开始播放按钮,就会进入全屏,现在在ios中,通过给video添加属性playsInline webkit-playsinline,可以让元素内联播放:
<video id="myPlayer" poster=""  playsInline webkit-playsinline autoplay></video>

 

在android 微信中,要在video上面添加覆盖物,需要用到X5渲染引擎提供的同层播放器,这个引擎是腾讯基于webkit开发的,添加以下属性,可以达到的效果是,调用开始播放按钮,进入全屏,此时全屏状态自定义操作按钮什么的可以显示在video上:

x5-video-player-type='h5' //启用h5同层播放器
x5-video-player-fullscreen='true'//全屏方式,对元素的高度有影响,不声明此属性,微信浏览器的标题栏的高度不会给页面
x5-video-orientation='landscape'//视频播放时是横屏显示还是竖屏显示,属性值有三个,landscape横屏显示,portrait竖屏显示,landscape|portrait跟随手机自动横竖屏

由于项目同时考虑到video在ios 和android 微信中的表现的不同,页面所有显示的东西也不一样,所以要对是否进入全屏做事件监听

video.addEventListener("x5videoenterfullscreen", function(){

//进入全屏模式

})

video.addEventListener("x5videoexitfullscreen", function(){

//退出全屏模式

})

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值