vue 视频播放

1、视频查看按钮:

<div class="video_btn" @click="showVideo">
  <img style="display: inline-block;vertical-align: middle;width: 18px;" src="../../assets/software_img/video.png">
  <span>安装视频</span>
</div>

2、el-dialog:

复制代码
<el-dialog :visible.sync="dialogVisible" width="50%">
  <video
    src="../../assets/software_img/lampBelt.mp4"
    :controls="videoOptions.controls"
    class="video-js vjs-big-play-centered vjs-fluid"
    webkit-playsinline="true"
    playsinline="true"
    x-webkit-airplay="allow"
    x5-playsinline
    style="width: 100%;"
    @play="onPlayerPlay"
    @pause="onPlayerPause"
    autoplay="autoplay"
    ref="video">
  </video>
</el-dialog>
复制代码

3、script:

复制代码
<script>
    export default {
        name: 'softwareDownload',
        data() {
            return {
                dialogVisible: false,
                videoOptions: {
                    controls:true,
                    src: "../../assets/software_img/lampBelt.mp4", // url地址
                },
                player: null,
                playTime:'',
                seekTime:'',
                current:'',
            }
        },
        created() {

        },
        mounted() {
        },
        beforeDestroy() {
            if (this.player) {
                this.player.dispose();
            }
        },
        methods: {
            showVideo() {
                this.dialogVisible = true;
                this.initVideo();
            },
            initVideo() {
                //原生初始化视频方法
                let myVideo = this.$refs.video;
                //ontimeupdate
                myVideo = function() {
                    myFunction();
                };
                let _this = this;
                function myFunction(){
                    let playTime = myVideo.currentTime
                    setTimeout(function () {
                        localStorage.setItem("cacheTime",playTime)
                    },500)
                    let time = localStorage.getItem("cacheTime")
                    // 当前播放位置发生变化时触发。
                    if(playTime - Number(time) > 2){
                        myVideo.currentTime = Number(time);
                    } else {

                    }
                };
            },
            // 播放
            onPlayerPlay(player) {
            },
            // 暂停
            onPlayerPause(player) {
            },
        },
    }
</script>
复制代码

 

 

 

posted @   小蘑菇123  阅读(245)  评论(2编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示