当前位置: 首页 > news >正文

网站开发在线培训linux做网站配置

网站开发在线培训,linux做网站配置,太原富库网站建设,网站建设是固定资产吗使用 localStorage 存储每个视频的播放进度在组件加载时恢复上次的播放进度在视频播放过程中实时保存进度在组件卸载前保存最终进度使用 timeupdate 事件来监听视频播放进度的变化 在模板中为视频元素添加事件监听&#xff1a; <videoloopautoplaycontrols:id"video_…
  1. 使用 localStorage 存储每个视频的播放进度
  2. 在组件加载时恢复上次的播放进度
  3. 在视频播放过程中实时保存进度
  4. 在组件卸载前保存最终进度
  5. 使用 timeupdate 事件来监听视频播放进度的变化

在模板中为视频元素添加事件监听:

<videoloopautoplaycontrols:id="`video_${index}`":src="getVideoSrc(video.src)"class="video"@loadedmetadata="loadVideoProgress"></video>
// ... 其他导入保持不变
import { reactive, ref, onMounted, onBeforeUnmount } from 'vue'// ... paramsList 和 params 保持不变// 添加视频进度保存的常量
const VIDEO_PROGRESS_KEY = 'VIDEO_PROGRESS'const videoList = ref([{title: '大范围流场图',src: 'dfwlct',isPlaying: true,progress: 0, // 添加进度属性},{title: '工程局部流场图',src: 'gcjblct',isPlaying: true,progress: 0, // 添加进度属性},
])// 加载保存的视频进度
const loadVideoProgress = () => {const savedProgress = localStorage.getItem(VIDEO_PROGRESS_KEY)if (savedProgress) {const progressData = JSON.parse(savedProgress)videoList.value.forEach((video, index) => {if (progressData[video.src]) {video.progress = progressData[video.src]const videoElement = document.getElementById(`video_${index}`) as HTMLVideoElementif (videoElement) {videoElement.currentTime = video.progress}}})}
}// 保存视频进度
const saveVideoProgress = () => {const progressData = {}videoList.value.forEach((video, index) => {const videoElement = document.getElementById(`video_${index}`) as HTMLVideoElementif (videoElement) {progressData[video.src] = videoElement.currentTime}})localStorage.setItem(VIDEO_PROGRESS_KEY, JSON.stringify(progressData))
}// 监听视频时间更新
const handleTimeUpdate = (index: number) => {const videoElement = document.getElementById(`video_${index}`) as HTMLVideoElementif (videoElement) {videoList.value[index].progress = videoElement.currentTimesaveVideoProgress()}
}// 组件挂载时加载进度
onMounted(() => {loadVideoProgress()// 为每个视频添加时间更新事件监听videoList.value.forEach((_, index) => {const videoElement = document.getElementById(`video_${index}`)if (videoElement) {videoElement.addEventListener('timeupdate', () => handleTimeUpdate(index))}})
})// 组件卸载前移除事件监听
onBeforeUnmount(() => {videoList.value.forEach((_, index) => {const videoElement = document.getElementById(`video_${index}`)if (videoElement) {videoElement.removeEventListener('timeupdate', () => handleTimeUpdate(index))}})saveVideoProgress()
})// ... 其他代码保持不变

这样,用户每次进入页面时都会自动加载上次观看的进度。进度信息会在以下情况下保存:

  • 视频播放过程中
  • 用户暂停视频时
  • 用户离开页面时
http://www.yayakq.cn/news/653651/

相关文章:

  • 深圳响应式网站建设哪家好沧州 网站建设
  • 河南做网站高手排名保定专业做网站公司
  • 做个公司网站要多少钱wordpress更好
  • 企业网站优化服务主要围绕哪些要素wordpress 计数器插件
  • 怎么替换网站模板十大电商平台
  • 网站群建设目标江门属于哪里
  • 禹州市门户网站建设典型的网站案例
  • 做网站链接室内设计公司平面图
  • 西宁建设公司网站用html制作网页代码
  • 长沙网站制造建行深圳分公司
  • 商丘销售网站制作建筑学长官网
  • 网站seo诊断工具慧聪网郭凡生现状
  • 基于php网站开发设计做网站好的网络公司
  • 福州做网站的网站建设的软硬件平台
  • 自己做的网站怎么让别人访问wordpress菜单怎么添加图片
  • 成都科技网站建设电话高新门户网站专题建设
  • 网站开发属于软件开发安阳电话区号
  • 做网站微信公众号微信网站建设方案
  • 企业网站建设推广方案怎么写宜兴网站优化
  • 建设专业网站电话咨询如何在jsp上做网站页面
  • 邢台市的做网站制作公司项目经理接到网站开发怎么开展
  • 建设网站那个好哪些网站做的比较好
  • 内江网站怎么做seo深圳电器公司官网
  • 常州网站建设乛薇广告设计公司朋友圈文案
  • google属于搜索引擎类网站.微信公众号的子菜单网页怎么制作
  • 如何建设一个收费的影视图文网站主题资源网站建设 反思
  • 网站开发需要用哪些东西营销型网站建设步骤
  • 新洲区城乡建设局网站怎么样引流顾客到店方法
  • 阜阳建设网站公司电话钓鱼网站怎么制作视频
  • 做58同城网站花了多少钱集团公司做网站