微信小程序多video播放暫停問題


<swiper class="swiper" indicator-dots="{{indicatorDots}}" autoplay="{{flag}}" interval="5000" duration="{{duration}}" current="{{indexCurrent}}" bindchange='onSlideChangeEnd' id='{{indexCurrent}}'>   
    <block wx:for="{{videos}}" wx:for-index="index" wx:key="index">
      <swiper-item class='video-item'>
        <video id="myVideo{{index}}" src='{{item}}' controls="{{controls}}" custom-cache="{{cache}}" object-fit='cover' show-center-play-btn="{{playBtn}}" autoplay='{{true}}' wx:if='{{index==indexCurrent}}'></video>

        <image class='video-play-btn' wx:if='{{index!=indexCurrent}}' mode='widthFix' data-index='{{index}}' bindtap='videoPlay' src='/pages/images/bofang.png'></image>
      </swiper-item>
    </block>
 </swiper>
//獲取應用實例
var app = getApp();


Page({

  /**
   * 頁面的初始數據
   */
  data: {
    indicatorDots: true,
    controls: true,
    playBtn: false,
    duration: 1000,
    cache: false,
    indexCurrent: null,
    videos:['.....','....','.....']
  },
  videoPlay: function (e) {
    var curIdx = e.currentTarget.dataset.index;
      // 沒有播放時播放視頻
      if (!this.data.indexCurrent) {
        this.setData({
          indexCurrent: curIdx
        })
        var videoContext = wx.createVideoContext('myVideo' + curIdx) //這里對應的視頻id
        videoContext.play()
      } else { // 有播放時先將prev暫停,再播放當前點擊的current
        var videoContextPrev = wx.createVideoContext('myVideo' + this.data.indexCurrent)
        if (this.data.indexCurrent != curIdx) {
          videoContextPrev.pause()
        }
        this.setData({
          indexCurrent: curIdx
        })
        var videoContextCurrent = wx.createVideoContext('myVideo' + curIdx)
        videoContextCurrent.play()
      }
    }
  }
})
.video-item{
  position: relative;
  width: 100%;
  height: 420rpx;
}
.video-item .video-play-btn {
  position: absolute;
  width: 100rpx;
  height: 100rpx;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM