自定义微信小程序视频组件播放按钮

小程序的视频组件没有隐藏播放按钮的属性,但是看了爱奇艺的小程序,发现他们可以自定义播放按钮,这就比较奇怪了,官方不提供,还能实现,一定有办法,于是想了很久,突然想到,可以在video组件里面嵌套两个cover-image,一个用来存放播放按钮,另外一个用来存放视频封面图,写好之后,又发现了新问题,网络比较慢的时候,封面图加载不及时,还是可以看得到原生的播放按钮。于是仔细研究了爱奇艺的小程序,原来在加载封面图之前,用白色的底色先遮住原生的视频组件了,恍然大悟,在包住封面图的cover-view里设置了背景色跟页面的一样,解决问题。

总体实现的思路如下:在video中写一个cover-view,cover-view的宽高跟video的宽度一致,然后设置cover-view的背景色不透明,然后在cover-view写一个cover-image,用来存放封面图,宽高跟video一致,最后添加cover-iamge,存放播放按钮,设置绝对定位,水平垂直居中,在播放按钮上添加点击事件,点击之后隐藏cover-view,不然点击video的时候,原生的播放控件会看不到,最后在监听视频结束事件,重新填充封面跟播放按钮就可以了。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
微信小程序是一种基于微信平台的应用程序,它可以在微信中直接运行,无需下载安装。而自定义组件是小程序中的一种重要功能,它允许开发者将一些常用的UI元素封装成组件,以便在不同的页面中复用。 自定义组件具有以下特点: 1. 组件是由wxml、wxss和js文件组成,可以独立定义样式和逻辑。 2. 组件可以接受外部传入的数据,通过属性进行配置。 3. 组件可以触发事件,向外部传递消息。 4. 组件可以包含子组件,形成组件的嵌套结构。 使用自定义组件的步骤如下: 1. 在小程序项目中创建一个新的文件夹,用于存放自定义组件的相关文件。 2. 在该文件夹中创建一个wxml文件,定义组件的结构。 3. 在同一文件夹中创建一个wxss文件,定义组件的样式。 4. 在同一文件夹中创建一个js文件,定义组件的逻辑。 5. 在需要使用该组件的页面中引入组件,并在wxml中使用组件标签。 例如,我们创建一个名为"custom-component"的自定义组件,其文件结构如下: ``` custom-component/ ├── custom-component.wxml ├── custom-component.wxss └── custom-component.js ``` 在custom-component.wxml中定义组件的结构,例如: ```html <view class="custom-component"> <text>{{text}}</text> <button bindtap="handleClick">点击按钮</button> </view> ``` 在custom-component.wxss中定义组件的样式,例如: ```css .custom-component { background-color: #f5f5f5; padding: 10px; } ``` 在custom-component.js中定义组件的逻辑,例如: ```javascript Component({ properties: { text: { type: String, value: '默认文本' } }, methods: { handleClick() { this.triggerEvent('click', { message: '按钮被点击了' }); } } }) ``` 在需要使用该组件的页面中引入组件,并在wxml中使用组件标签,例如: ```html <custom-component text="Hello World" bind:click="handleCustomComponentClick"></custom-component> ``` 以上就是微信小程序自定义组件的简单介绍。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值