uniapp Video视频计时判断
文章描述:
uniapp视频video计时以及判断是否为会员等操作
muted 是否静音播放
template
<template>
<view class="container">
<video class="vide" id="myVideo" :src="urls" controls="controls" autoplay=true @timeupdate='timeupdate'
muted="false"></video>
<view>
<view>总时间:{{duration}}</view>
<view>播放时间:{{playtime}}</view>
<view>记录时长:{{currentTime}}</view>
</view>
</view>
</template>
script
实时刷新视频播放时间,到设置时间后判断当前用户是否为会员
export default{
data(){
return{
urls:'https://www.miyil.com/statics/videos/huoyingrenzhe_changmen_sl.mp4',
currentTime: '', //记录当前时间
dragTime: '', //拖拽进度
flag: true, //第一次进入缓存
isSubmit: false, //是否提交
isHasTime: 10, //默认时长,
duration:'', // 视频总时长
playtime:'', // 当前播放时间
}
},
onReady: function(res) {
// #ifndef MP-ALIPAY
this.videoContext = uni.createVideoContext('myVideo')
// #endif
},
methods:{
timeupdate(e) {
this.duration = Number(e.detail.duration.toFixed(0)) // 视频总时长
var currentTime = Number(e.detail.currentTime.toFixed(2)) // 当前播放时间
this.playtime = Number(e.detail.currentTime.toFixed(0))
if (this.flag) {
// 第一次进入缓存--记录页面刷新缓存的时长
this.currentTime = currentTime
this.flag = false
} else {
// 继续观看
// 用户未点击 - 到指定时间
if(this.currentTime>=this.isHasTime){
// 判断是否为会员
this.videoContext = uni.createVideoContext('myVideo');//创建视频实例指向video
this.videoContext.pause(); //暂停
}
// 用户点击
if (!this.isSubmit) {
// 点击快进到指定时间
if(this.currentTime>=this.isHasTime){
// 判断是否为会员
this.videoContext = uni.createVideoContext('myVideo');//创建视频实例指向video
this.videoContext.pause(); //暂停
}
let dis = currentTime - this.currentTime
if (Math.abs(dis) > 1) {
let dragTime = currentTime - this.currentTime
this.currentTime = currentTime
this.dragTime == '' ? (this.dragTime = dragTime) : (this.dragTime = Number(this.dragTime) + Number(dragTime))
console.log('快进' + dragTime);
return
}else{
}
} else {
return
}
}
}
}
}
发布时间:2022/07/13
发表评论