亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用vue的transition完成滑動過渡的示例代碼

發布時間:2020-10-17 10:35:14 來源:腳本之家 閱讀:161 作者:海光 欄目:web開發

使用vue來做一些小巧的動畫效果是非常方便的,今天本人想使用vue的transition來完成一個滑動過渡效果,這里和大家分享一下。

直接上源代碼:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Vue滑動效果</title>
  <style>
    .d {
      position: absolute;
      border: 1px solid red;
      width: 30px;
      height: 30px;
    }
    @keyframes show {
      0% {
        opacity: 0;
        left: 32px;
      }
      100% {
        opacity: 1;
        left: 0;
      }
    }
    @keyframes hide {
      0% {
        opacity: 1;
        left: 0;
      }
      100% {
        opacity: 0;
        left: -32px;
      }
    }
    .show-enter-active {
      animation: show 1.2s;
    }
    .show-leave-active {
      animation: hide 1.2s;
    }
    .show-enter, .show-leave-to {
      opacity: 0;
    }
    .wrap {
      position: relative;
      width: 32px;
      height: 32px;
    }
  </style>
  <script src="https://cdn.bootcss.com/vue/2.4.2/vue.min.js"></script>
</head>
<body>
<div id="app">
  <p>{{ message }}</p>
  <div class="wrap">
    <transition name="show">
      <div class="d" v-for="item in list" :key="item.id" v-if="count === item.id">
        {{ item.text }}
      </div>
    </transition>
  </div>
  <button @click="add">add</button>
</div>

<script>
  new Vue({
    el: '#app',
    data () {
      return {
        message: 'Hello Vue.js!',
        count: 0,
        list: [
          {id: 0, text: 'aaa'},
          {id: 1, text: 'bbb'},
          {id: 2, text: 'ccc'}
        ]
      }
    },
    methods: {
      add: function () {
        if (this.count < this.list.length - 1) {
          this.count += 1;
        } else {
          this.count = 0;
        }
      }
    }
  })
</script>
</body>
</html>

這里需要注意的是父級使用relative,子級使用absolute進行定位,利用left值來進行位置的控制移動。這里如果使用transform的話,由于之前的div有一個漸變的消失過程,這個過程中他的位置一直有存在,造成了后面的div無法正確移動到對應位置,所以使用absolute更好。

實在不行可以使用transition的mode屬性,設置成out-in,先讓前者完成動畫,讓占據的位置完全消失,使得下一個div可以正常運動,不過這種方式只能先后完成動畫,不能同時完成動畫。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

双桥区| 遂川县| 五指山市| 崇阳县| 上高县| 东光县| 柳州市| 桦川县| 祥云县| 仙桃市| 鞍山市| 奉新县| 海南省| 蓝田县| 凤城市| 抚松县| 南丰县| 日照市| 贵定县| 杂多县| 民和| 开封市| 龙海市| 孝感市| 苍溪县| 巍山| 岑巩县| 平阴县| 龙海市| 克山县| 吉隆县| 老河口市| 盱眙县| 西城区| 重庆市| 乐山市| 大兴区| 枣庄市| 海淀区| 佳木斯市| 台南市|