微信小程序含视频组件的banner轮播使用心得

背景描述:

 1、产品需要banner类似京东app详情页中banner,第一个swiper-item为视频,后面的swiper-item为图片。

2、video组件是由客户端创建的原生组件,它的层级是最高的,不能通过 z-index 控制层级。微信官方已经说明video组件层级最高,并且不能通过z-index来控制

 3、设置第一张图片为视频的占位图片,当点击图片时,将当前占位图片隐藏,显示视频播放器;并添加一个纯黑和banner宽高一样的图层,绝对定位,用来放左右切换按钮,控制banner左右滑动

wxml代码:

<view class='banner-wrapper'>
      <swiper indicator-dots indicator-color="{{indicator}}" current="{{current}}" indicator-active-color="{{activeIndicator}}" class="bn-swiper" bindchange="bannerChage" duration="300">
        <block wx:for="{{storeImgs}}" wx:key="bn_urls">
          <swiper-item>
            <block wx:if="{{item.type == 1}}">
              <view wx:if="{{isPlay}}" class='video-wrapper'>
                <video src="{{item.src}}" class='video' controls id='myVideo'></video>
              </view>
              <view wx:else class='video-host-wrapper' catchtap='play'>
                <image src="{{storeImgs[1].src}}" mode='aspectFill' />
                <image src='/images/play.png' class='play-icon'></image>
              </view>
            </block>
            <image src="{{item.src}}" mode='aspectFill' catchtap='preview' data-url="{{item.src}}" wx:else/>
          </swiper-item>
        </block>
      </swiper>
      <view class='banner-mask' wx:if="{{isPlay}}">
        <image src='/images/arrow.png' class='prev' catchtap='goPrev'></image>
        <image src='/images/arrow.png' class='next' catchtap='goNext'></image>
      </view>


js代码:

data:{
  storeImgs: [],//banner
     current:0,//banner当前的index
 }


效果:



评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值