小程序点击图片实现自动播放视频

通过列表的点击事件自动播放列表对应的视频,同时停止上一个视频的播放。

源码:

<view> <view wx:for='{{vedio_data}}' wx:key=''> <view> <image src='https://www.jb51.net/img/1.png'></image> <text>{{item.title}} </text> <view bindtap="videoPlay" > <!-- 视频图层 --> <image src="https://www.jb51.net/{{item.img}}" mode="scaleToFill"> <!-- 视频按钮 --> <image src="https://www.jb51.net/img/bf.png" mode="scaleToFill"></image> </image> </view> </view> <!-- 视频 --> <video src="https://www.jb51.net/{{item.url}}" wx:if="{{_index == index}}" > <!-- log --> </video> </view> <view> <image src='https://www.jb51.net/img/qd.png'></image> <text>敬请期待</text> </view> </view>

CSS:

/* 边框 */ .vv { width: 700rpx; height: 530rpx; border-left: gainsboro 1px solid; border-right: gainsboro 1px solid; border-top: gainsboro 1px solid; margin-bottom: 80rpx; border-radius: 15rpx; overflow: hidden; position: relative; top: 40rpx; left: 20rpx; } /* 小图标 */ .img1 { width: 36rpx; height: 28rpx; margin-top: 30rpx; } /* 标题文字 */ .text { font-size: 28rpx; color: #585858; margin-left: 10rpx; } /* 视频 */ .video { width: 100%; height: 450rpx; margin-top: 20rpx; border-bottom-left-radius: 15rpx; border-bottom-right-radius: 15rpx; } .videoVideo2 { width: 703rpx; height: 453rpx; position: absolute; top: 80rpx; left: 20rpx; z-index: 99; } .videoPlay{ position: absolute; width: 80rpx; height: 80rpx; top:45%; left: 45%; margin: -30rpx 0 0 -30rpx; z-index: 100; } /* 底部盒子 */ .bottom { width: 40rpx; height: 40rpx; } /* 底部图片 */ .di { display: flex; flex-direction: row; padding: 60rpx 0rpx 100rpx 280rpx; } /* 底部文字 */ .bottom_text { font-size: 34rpx; color: #d8d8d8; margin-left: 10rpx; }

JS:

// pages/class/class.js Page({ /** * 页面的初始数据 */ data: { videoPlay: null, vedio_data: [{ title: '无13131(大班)', url: 'xxx', img: 'xxx', }, { title: ' 如何23 1 、 2 、2423、4)', url: 'xxx', img: 'xxx' }, { title: '温热碍', url: 'xxx', img:'xxx' }, { title: '挑嘎嘎嘎输', url: 'xxx', img: 'xxx' }, { title: '延伸挑战:运输圆球', url: 'xxx', img:'xxx' }, ] }, // 点击cover播放,其它视频结束 videoPlay: function (e) { var _index = e.currentTarget.id this.setData({ _index: _index }) //停止正在播放的视频 var videoContextPrev = wx.createVideoContext(this.data._index) videoContextPrev.stop(); setTimeout(function(){ //将点击视频进行播放 var videoContext = wx.createVideoContext(_index) videoContext.play(); },500) }, })

视频和图片地址就不提供了。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/4bf06502428c9af0da18a7c4291822e8.html