zoukankan      html  css  js  c++  java
  • 实时视频

    <!-- 实时视频 -->
    <template>
      <div class="onlineVideo-wrap" :class="{'hidden': hiddenMenu}">
        <div class="com-panel-title">
          <div class="panel-left">实时视频</div>
        </div>
    
        <div class="video-list">
          <span class="deg-1"></span>
          <span class="deg-2"></span>
          <span class="deg-3"></span>
          <span class="deg-4"></span>
          <div class="video-list-top">
            <div class="video-item full" v-if="bigVideo1 && bigVideo1.length">
              <img class="img" :src="require('@/assets/img/onlineVideo/video.jpg')" alt="">
              <span class="play" @click="showFullscreenVideo(bigVideo1[0])"></span>
            </div>
            <div class="video-item" v-for="(item,index) in videoSrc.slice(0,4)" :key="index" v-else>
              <img class="img" :src="require('@/assets/img/onlineVideo/video.jpg')" alt="">
              <span class="play" @click="showFullscreenVideo"></span>
            </div>
          </div>
          <div class="video-list-top">
            <div class="video-item full" v-if="bigVideo2 && bigVideo2.length">
              <img class="img" :src="require('@/assets/img/onlineVideo/video.jpg')" alt="">
              <span class="play" @click="showFullscreenVideo"></span>
            </div>
            <div class="video-item" v-for="(item,index) in videoSrc.slice(4,8)" :key="index" v-else>
              <img class="img" :src="require('@/assets/img/onlineVideo/video.jpg')" alt="">
              <span class="play" @click="showFullscreenVideo"></span>
            </div>
          </div>
        </div>
    
        <div class="video-toggle" @click="togglePanel"></div>
      </div>
    </template>
    <script lang="ts">
    import { Component, Vue, Prop } from "vue-property-decorator";
    @Component({
      name: "OnlineVideo",
      components: {}
    })
    export default class OnlineVideo extends Vue {
      private videoSrc: any = [
        {
          name: "视频1",
          src: "/"
        },
        {
          name: "视频2",
          src: "/"
        },
        {
          name: "视频3",
          src: "/"
        },
        {
          name: "视频4",
          src: "/"
        },
        {
          name: "视频5",
          src: "/"
        },
        {
          name: "视频6",
          src: "/"
        },
        {
          name: "视频7",
          src: "/"
        },
        {
          name: "视频8",
          src: "/"
        }
      ];
      private showSingle: any = true;
      get hiddenMenu() {
        return this.$store.state.baseModule.toggleRightPanel;
      }
      get bigVideo1() {
        return this.$store.state.baseModule.bigVideo1;
      }
      get bigVideo2() {
        return this.$store.state.baseModule.bigVideo2;
      }
      private showFullscreenVideo() {
        this.$store.commit(
          "baseModule/setFullscreenVideoSrc",
          "http://www.baidu.com"
        );
      }
      private togglePanel() {
        this.$store.commit("baseModule/setToggleRightPanel", !this.hiddenMenu);
      }
    }
    </script>
    <style lang="less" scoped>
    .onlineVideo-wrap {
      z-index: 2;
      position: absolute;
      right: 10px;
      top: 100px;
       820px;
      height: 1080px;
      transition: 0.5s transform;
      transform: translateX(0);
      &.hidden {
        transform: translateX(102.5%);
        .video-toggle {
          &:before {
            transform: rotate(180deg);
          }
        }
      }
      .video-list {
        margin-top: 10px;
        height: calc(100% - 40px);
        padding: 5px;
        border: 1px solid #09a9af;
        position: relative;
        box-shadow: 0 0 15px rgba(72, 223, 229, 0.5),
          0 0 20px rgba(72, 223, 229, 0.8) inset;
        .deg-1,
        .deg-2,
        .deg-3,
        .deg-4 {
          position: absolute;
          z-index: 10;
           6px;
          height: 6px;
          background: url("../../assets/img/home/bg_pop_deg_x.png") no-repeat;
        }
        .deg-1 {
          left: -2px;
          top: -2px;
        }
        .deg-2 {
          right: -2px;
          top: -2px;
          transform: rotate(90deg);
        }
        .deg-3 {
          left: -2px;
          bottom: -2px;
          transform: rotate(270deg);
        }
        .deg-4 {
          right: -2px;
          bottom: -2px;
          transform: rotate(180deg);
        }
        .video-list-top {
           100%;
          height: 50%;
          display: flex;
          flex-wrap: wrap;
          position: relative;
          .video-item {
             50%;
            height: 50%;
            padding: 2px;
            position: relative;
            &.full {
               100%;
              height: 100%;
            }
            .img {
               100%;
              height: 100%;
            }
            .play {
              content: "";
              display: block;
              position: absolute;
              left: 50%;
              top: 50%;
              margin: -48px 0 0 -57px;
               115px;
              height: 97px;
              background: url("../../assets/img/onlineVideo/play.png") no-repeat;
              cursor: pointer;
              transition: 0.5s opacity;
              opacity: 0.8;
              &:hover {
                opacity: 1;
              }
            }
          }
        }
      }
      .video-toggle {
        position: absolute;
        left: -152px;
        top: 50%;
        transform: translateY(-50%);
         142px;
        height: 226px;
        background: url("../../assets/img/onlineVideo/bg_video_left.png") no-repeat;
        &:before {
          content: "";
          display: block;
          position: absolute;
          right: 15px;
          top: 50%;
          margin-top: -23px;
           46px;
          height: 45px;
          background: url("../../assets/img/onlineVideo/bg_arrow_right.png")
            no-repeat;
          cursor: pointer;
          transform: rotate(0deg);
        }
      }
    }
    </style>
  • 相关阅读:
    HDU-2262 Where is the canteen 概率DP,高斯消元
    HDU-4418 Time travel 概率DP,高斯消元
    无人驾驶相关数据集
    C++——编译器运行过程
    C++——Struct 和 Union区别
    常用linux指令
    无人驾驶——定位
    Ubuntu 没有 无线网 RTL8821ce 8111 8186
    无人驾驶之传感器融合算法
    LIN通讯
  • 原文地址:https://www.cnblogs.com/Jeely/p/15125048.html
Copyright © 2011-2022 走看看