微信小程序中video全屏遮罩

由于 video 的层级非常高,所以使用 cover-view 来实现,非全屏时支持同级遮罩可以直接同级使用 view 实现。

下面实现全屏遮罩

cover-view 需要嵌套在 video

<video ref="video" id="video"
       :title="courseData.title"
       :poster="courseData.thumb"
       object-fit="cover"
       show-mute-btn
       enable-play-gesture
       :enable-progress-gesture="false"
       :src="courseData.videoUrl"
       style="width: 100%"
       @timeupdate="onVideoTimeUpdate"
       @play="onVideoPlay"
       @fullscreenchange="onFullScreenChange">
  <cover-view class="timeout-mask cover" v-if="timeoutMaskStatus" @click="handleTimeoutMask">
    <cover-view>点击继续播放</cover-view>
  </cover-view>
</video>

对应的 css,发现微信小程序在视频全屏时默认 cover-view 的 visibility 值为 hidden 造成了无法显示,故添加了 visibility 为 visible(不知道是不是某些依赖的问题,尽量添加避免吧)

.timeout-mask {
  z-index: 9999999;
  display: flex;
  justify-content: center;
  align-items: center;
  backdrop-filter: blur(10px);
  font-size: 20px;

  &.cover {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    visibility: visible;
    background-color: rgba(0, 0, 0, .3);
    color: #ffffff;

    cover-view {
      visibility: visible;
    }
  }
}
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会功夫的李白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值