vue 中的 video 弹框实现

2019-09-26  本文已影响0人  弹指一挥间_e5a3

前言

今天在 vue 项目中需要一个弹框视频的实现,具体需求为:点击按钮,弹出视频框,播放视频。


image.png
image.png

于是用 element-ui 的 dialog 组件实现。

// template
  <el-dialog
    :visible.sync="dialogVisible"
    width="800px"
    height="480"
    :before-close="handleClose"
  >
    <el-divider />
    <video id="video" controls width="800" height="480" poster="../../../../assets/images/account/member.png">
      <source src="../../../../assets/video/banner.mp4" type="video/mp4">
    </video>
    <span slot="footer" class="dialog-footer">
      <el-button @click="dialogVisible = false">取 消</el-button>
    </span>
  </el-dialog>
<script>
export default {
  data() {
    return {
      dialogVisible: false,
    }
  },
  methods: {
    handleClose() {
      this.dialogVisible = false
      // 关闭弹出框时 视频关闭播放
      const video = document.getElementById('video')
      video.pause()
    },
  },
}
</script>

点击视频时触发这个事件:

    handleVideo() {
      this.$refs.videoDiolag.dialogVisible = true
    },
``
上一篇下一篇

猜你喜欢

热点阅读