pc视频播放器禁止拖动

This commit is contained in:
joshen
2024-10-10 23:07:46 +08:00
parent 3b017445c6
commit 6b6e8a4096
3 changed files with 101 additions and 14 deletions

View File

@@ -27,7 +27,7 @@
<course-image v-if="courseInfo.id != ''" :course="courseInfo"></course-image>
</div>
<div v-if="resType == 10" style="position: relative;">
<videoPlayer ref="myVideoPlayer" id="myVideoPlayer" @progress="progress" :src="blobUrl" @onPlayerPlaying="onPlayerPlaying"
<videoPlayer ref="myVideoPlayer" id="myVideoPlayer" @progress="progress" :src="blobUrl" :blobId="blobId" @onPlayerPlaying="onPlayerPlaying"
:initTime="contentData.lastStudyTime" :notePlay="notePlay" @onPlayerPlay="onPlayerPlay"
:isDrag="curriculumData.isDrag" @onFullscreen="onFullscreen" @onPlayerPause="onPlayerPause"
@onPlayerEnded="onPlayerEnded" :isCrowd="isCrowd" @onTimeUpdate="handleAudioTimeUpdate"></videoPlayer>
@@ -652,6 +652,8 @@
} else {
this.blobUrl = process.env.VUE_APP_BASE_API + '/xboe/m/course/cware/resource?sign=' + urlSign;
}
console.log('this.contentData.id:',this.contentData.id)
this.blobId = this.contentData.id
//console.log(this.blobUrl,'this.blobUrl');
},
widthOpen(url) {
@@ -814,6 +816,28 @@
$this.controlHeight=h-95;
//console.log(h,$this.controlHeight,'$this.controlHeight');
})
console.log('this.contentData11:',this.contentData,this.curriculumData)
// 视频设置禁用处理逻辑,如果用户已全部观看完该视频则设置为能全部拖动的逻辑把isDrag设置为true即可,同时删除本地存储的数据
if(this.contentData.progressVideo ===1){
var obj = JSON.parse(this.contentData.content)
obj.isDrag = true
this.contentData.content = JSON.stringify(obj)
this.curriculumData.isDrag = true
var time = localStorage.getItem('videoProgressData')
var arr = time&&JSON.parse(time) || {}
//alert(con.progressVideo+'--'+con.id + '--'+JSON.stringify(arr))
delete arr[this.contentData.id];
localStorage.setItem('videoProgressData',JSON.stringify(arr))
}
if(this.contentData.progressVideo>0 && this.contentData.progressVideo !==1){
var time = localStorage.getItem('videoProgressData')
var arr = time&&JSON.parse(time) || {}
arr[this.contentData.id] = this.contentData.progressVideo
localStorage.setItem('videoProgressData',JSON.stringify(arr))
}
},
isShowTime(){
if(this.isContentTypeTwo != this.contentData.contentType){
@@ -1205,6 +1229,16 @@
itemId: this.contentData.studyItemId,
videoTime: intTime
};
console.log('this.courseInfo:',this.contentData)
if(!this.curriculumData.isDrag && this.contentData.progressVideo !=1){
var time = localStorage.getItem('videoProgressData')
var arr = time&&JSON.parse(time) || {}
if(arr[this.blobId] && this.contentData.progressVideo<arr[this.blobId]) {
postData.progressVideo = arr[this.blobId]
postData.contentId = this.contentData.id
postData.courseId = this.contentData.courseId
}
}
//console.log('记录播放时间')
apiStudy.studyVideoTime(postData).then(rs => {
if (rs.status != 200) {
@@ -1247,6 +1281,16 @@
itemId: this.contentData.studyItemId,
videoTime: intTime
};
console.log('this.courseInfo:',this.contentData)
if(!this.curriculumData.isDrag && this.contentData.progressVideo !=1){
var time = localStorage.getItem('videoProgressData')
var arr = time&&JSON.parse(time) || {}
if(arr[this.blobId] && this.contentData.progressVideo<arr[this.blobId]) {
postData.progressVideo = arr[this.blobId]
postData.contentId = this.contentData.id
postData.courseId = this.contentData.courseId
}
}
//console.log('记录播放时间')
apiStudy.studyVideoTime(postData).then(rs => {
if (rs.status != 200) {