微信小程序(原生)——video视频禁止拖动进度条、可全屏观看等视频播放结束事件、数据监听、显示播放时长、固定倍速、视频去除黑
时间: 2023-07-10 15:12:07 浏览: 407
微信小程序视频
您好,针对您的问题,我可以为您提供以下的解答:
1. 禁止拖动进度条:可以通过在 video 标签加入属性 `controls="false"` 来禁止掉进度条,示例如下:
```
<video src="{{src}}" controls="false"></video>
```
2. 可全屏观看:可以通过在 video 标签加入属性 `fullscreen="true"` 来启用全屏功能,示例如下:
```
<video src="{{src}}" fullscreen="true"></video>
```
3. 视频播放结束事件:可以通过在 video 标签绑定 `bindended` 事件来监听视频播放结束,示例如下:
```
<video src="{{src}}" bindended="onEnded"></video>
```
4. 数据监听:可以使用小程序框架提供的数据监听机制来监听数据变化,示例如下:
```
Page({
data: {
src: "",
duration: 0
},
onLoad: function () {
this.setData({
src: "http://example.com/video.mp4"
})
wx.getVideoInfo({
src: this.data.src,
success: (res) => {
this.setData({
duration: res.duration
})
}
})
}
})
```
5. 显示播放时长:可以通过调用 `wx.getVideoInfo` 方法获取视频时长,并将时长渲染到页面上,示例如下:
```
<video src="{{src}}" bindtimeupdate="onTimeUpdate"></video>
Page({
data: {
src: "",
duration: 0,
currentTime: 0
},
onLoad: function () {
this.setData({
src: "http://example.com/video.mp4"
})
wx.getVideoInfo({
src: this.data.src,
success: (res) => {
this.setData({
duration: res.duration
})
}
})
},
onTimeUpdate: function (e) {
this.setData({
currentTime: e.detail.currentTime
})
}
})
```
6. 固定倍速:可以通过在 video 标签加入属性 `playbackRate="2"` 来设置播放速度为 2 倍速,示例如下:
```
<video src="{{src}}" playbackRate="2"></video>
```
7. 视频去除黑边:可以通过在 video 标签加入属性 `objectFit="fill"` 来让视频填充整个容器,去除黑边,示例如下:
```
<video src="{{src}}" objectFit="fill"></video>
```
希望以上解答能够帮助到您,如有疑问请随时提出。
阅读全文