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


Posted in Javascript onMay 29, 2020

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

源码:

<view>
 <view class='vv' wx:for='{{vedio_data}}' wx:key=''>
 <view class='block' style='margin-left:20rpx;'>
 <image src='/img/1.png' class='img1' style='margin-left:20rpx'></image>
 <text class='text'>{{item.title}} </text>
 <view id="{{index}}" class="cover" style="display: {{ _index == index ? 'none' : 'block' }};" bindtap="videoPlay" >
 <!-- 视频图层 -->
 <image class="videoVideo2" src="{{item.img}}" mode="scaleToFill">
  <!-- 视频按钮 -->
  <image class="videoPlay" src="/img/bf.png" mode="scaleToFill"></image>
 </image>
 </view>
 </view>
 <!-- 视频 -->
 <video src="{{item.url}}" id="{{index}}" class='video' wx:if="{{_index == index}}" >
<!-- log -->
 </video>
 </view>
 <view class='di'>
 <image src='/img/qd.png' class='bottom'></image>
 <text class='bottom_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)
 },
})

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript实现动态增加删除表格行(兼容IE/FF)
Apr 02 Javascript
javascript 常用方法总结
Jun 03 Javascript
javascript解决innerText浏览器兼容问题思路代码
May 17 Javascript
JScript中的条件注释详解
Apr 24 Javascript
深入浅出理解javaScript原型链
May 09 Javascript
JS动态日期时间的获取方法
Sep 28 Javascript
js正则表达式验证邮件地址
Nov 12 Javascript
JavaScript生成指定范围的时间列表
Mar 19 Javascript
Vue.js单向绑定和双向绑定实例分析
Aug 14 Javascript
vue实现微信二次分享以及自定义分享的示例
Mar 20 Javascript
js实现数字从零慢慢增加到指定数字示例
Nov 07 Javascript
详细聊聊vue中组件的props属性
Nov 02 Vue.js
django使用channels2.x实现实时通讯
Nov 28 #Javascript
在 Vue-CLI 中引入 simple-mock实现简易的 API Mock 接口数据模拟
Nov 28 #Javascript
详解Vue中watch的详细用法
Nov 28 #Javascript
vscode下的vue文件格式化问题
Nov 28 #Javascript
微信小程序如何获取用户收货地址
Nov 27 #Javascript
详解vue2.0 资源文件assets和static的区别
Nov 27 #Javascript
微信小程序实现点击图片旋转180度并且弹出下拉列表
Nov 27 #Javascript
You might like
Laravel框架路由配置总结、设置技巧大全
2014/09/03 PHP
smarty模板引擎从配置文件中获取数据的方法
2015/01/22 PHP
laravel 解决Eloquent ORM的save方法无法插入数据的问题
2019/10/21 PHP
设定php简写功能的方法
2019/11/28 PHP
php自动加载代码实例详解
2021/02/26 PHP
THINKPHP-Apache服务器中使用Alias虚拟目录URL重写 隐藏index.php
2021/03/09 PHP
初探jquery——表单应用范例
2007/02/20 Javascript
可在线编辑网页文字效果代码(单击)
2013/03/02 Javascript
js动态改变select选择变更option的index值示例
2014/07/10 Javascript
js改变embed标签src值的方法
2015/04/10 Javascript
Bootstrap表单布局样式代码
2016/05/31 Javascript
BootstrapTable+KnockoutJS自定义T4模板快速生成增删改查页面
2016/08/01 Javascript
vue组件 $children,$refs,$parent的使用详解
2017/07/31 Javascript
jQuery插件DataTables分页开发心得体会
2017/08/22 jQuery
elementUI Vue 单个按钮显示和隐藏的变换功能(两种方法)
2018/09/04 Javascript
JavaScript学习笔记之基于定时器实现图片无缝滚动功能详解
2019/01/09 Javascript
Nuxt使用Vuex的方法示例
2019/09/06 Javascript
JavaScript基于用户照片姓名生成海报
2020/05/29 Javascript
vue中封装axios并实现api接口的统一管理
2020/12/25 Vue.js
Vant+postcss-pxtorem 实现浏览器适配功能
2021/02/05 Javascript
[06:23]2014DOTA2西雅图国际邀请赛 小组赛7月12日TOPPLAY
2014/07/12 DOTA
Django查询数据库的性能优化示例代码
2017/09/24 Python
Python常见MongoDB数据库操作实例总结
2018/07/24 Python
python实现向微信用户发送每日一句 python实现微信聊天机器人
2019/03/27 Python
Python二维码生成识别实例详解
2019/07/16 Python
python实时检测键盘输入函数的示例
2019/07/17 Python
Python 解码Base64 得到码流格式文本实例
2020/01/09 Python
详解CSS透明opacity和IE各版本透明度滤镜filter的最准确用法
2016/12/20 HTML / CSS
个人评价范文分享
2014/01/11 职场文书
幼儿园英语教学反思
2014/01/30 职场文书
建筑工地门卫岗位职责
2014/04/30 职场文书
离职保密承诺书
2014/05/28 职场文书
群众路线对照检查剖析材料
2014/10/09 职场文书
2014年党务公开工作总结
2014/12/09 职场文书
2015年教师业务工作总结
2015/05/26 职场文书
幼儿园教师管理制度
2015/08/05 职场文书