美文网首页VueVue
Vue<切割轮播图效果>

Vue<切割轮播图效果>

作者: 誰在花里胡哨 | 来源:发表于2019-09-24 10:37 被阅读0次
效果图:
banner.gif
注意:使用的是 vue + swiper + scss 实现的效果,有不懂 swiper使用的请参考地址https://www.jianshu.com/p/16024f32dd75
官方文档地址:https://www.swiper.com.cn/api/effects/193.html
代码如下:
<template>
  <div class="overall">
    <div id="box" class="swiper-container">
      <div class="swiper-wrapper">
        <div class="swiper-slide" v-for="(i,index) in list" :key="index">
          <div class="left" :class="index == active_Index ?'leftActive':''">
            <img v-if="index%2==0" :src="i.img" alt />
            <section class="text" v-else>{{i.message}}</section>
          </div>
          <div class="right" :class="index == active_Index ?'rightActive':''">
            <img v-if="index%2!=0" :src="i.img" alt />
            <section class="text" v-else>{{i.message}}</section>
          </div>
        </div>
      </div>
      <div class="swiper-pagination"></div>
    </div>
  </div>
</template>

<script>
import Swiper from "swiper";
import anime from "animejs/lib/anime.es.js";
export default {
  name: "HelloWorld",
  data() {
    return {
      active_Index: 0,
      list: [
        {
          message: "banner 1.",
          img: require("@/assets/img/1.jpg")
        },
        {
          message: "banner 2.",
          img: require("@/assets/img/2.jpg")
        },
        {
          message: "banner 3.",
          img: require("@/assets/img/3.jpeg")
        }
      ]
    };
  },
  mounted() {
    let _this = this;
    var mySwiper = new Swiper(".swiper-container", {
      direction: "vertical",
      mousewheel: true,
      effect: "fade",
      pagination: {
        el: ".swiper-pagination",
        clickable: true
      },
      on: {
        slideChangeTransitionStart: function() {
          _this.active_Index = this.activeIndex;
        }
      }
    });
  }
};
</script>

<style lang="scss" scoped>
.nopage {
  display: none;
}
.showpage {
  display: block;
}
.swiper-wrapper {
  background: #3d3d3d;
}
#box {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  .swiper-slide-active {
    display: block;
  }
  .swiper-slide {
    overflow: hidden;
    position: relative;
    .left,
    .right {
      width: 90%;
      height: 100%;
      position: absolute;
      overflow: hidden;
      background: #3d3d3d;
      transition: 1s;
      img {
        transition: 1.5s;
        display: block;
        position: absolute;
        transform: skewX(30deg) scale(1);
      }
      .text {
        width: 50%;
        height: 100%;
        transform: skewX(30deg);
        font-size: 40px;
        font-weight: 700;
        color: white;
        text-transform: uppercase;
        position: absolute;
        display: flex;
        justify-content: center;
        align-items: center;
        opacity: 0;
        transition: 1.5s;
      }
    }
    .left {
      left: -40%;
      transform: skewX(-30deg) translateY(-100%);
      img {
        right: -30%;
      }
      .text {
        right: 0%;
      }
    }
    .right {
      right: -40%;
      transform: skewX(-30deg) translateY(100%);
      img {
        left: -30%;
      }

      .text {
        left: 0%;
      }
    }
    .leftActive,
    .rightActive {
      img {
        transform: skewX(30deg) scale(1.1);
      }
      .text {
        opacity: 1;
      }
    }
    .leftActive {
      transform: skewX(-30deg) translateY(0);
    }
    .rightActive {
      transform: skewX(-30deg) translateY(0);
    }
  }
}
</style>

相关文章

  • Vue<切割轮播图效果>

    效果图: 代码如下:

  • 用vue写一个轮播图效果

    轮播图在网站中几乎无处不在,占用地方少,交互性好。今天就来聊聊如何用vue实现一个轮播效果。 一、原理在轮播图数组...

  • 2019-04-28

    vue 轮播图组件

  • vue实现轮播图效果

  • vue过渡效果-轮播图

    为了在vue里做个轮播图,找遍了网页博客,终于找到一个看的懂得文章具体轮播图的做法参考原文地址:点击这里 vue过...

  • 12.轮播图组件

    轮播图效果 一、新建home.vue 1、上篇我们为了便于展示,把头部my-header组件放在了App.vue页...

  • Vue | 入手 Vue

    Vue 的介绍,优缺点等概念这里就不瞎掰了。若想了解请直达官网。 在 CSS 效果 | 轮播图 和 CSS 效果 ...

  • android轮播图效果

    先上效果图: viewpager+handler+runnableTask实现轮播图效果。可以自动轮播,左右无限滑...

  • 轮播图心得

    轮播图 写轮播图之前我们要认识到几个问题:一、什么是轮播图?二、怎么实现轮播效果?三、轮播图还有什么小功能可以实现...

  • Vue项目中使用elementUI中的Carousel 走马灯实

    轮播图效果 如需封装可参考如下: 封装Carousel走马灯实现轮播图效果[https://www.jianshu...

网友评论

    本文标题:Vue<切割轮播图效果>

    本文链接:https://www.haomeiwen.com/subject/irpvuctx.html