>  기사  >  웹 프론트엔드  >  Vue는 휴대폰 번호 복권을 위아래로 스크롤하는 애니메이션 예시 공유를 구현합니다.

Vue는 휴대폰 번호 복권을 위아래로 스크롤하는 애니메이션 예시 공유를 구현합니다.

小云云
小云云원래의
2018-05-22 09:43:415262검색

이 글에서는 주로 휴대폰 번호 복권의 상하 스크롤 애니메이션을 구현한 Vue의 예시를 소개합니다. 그것은 특정 참조 가치가 있습니다. 관심 있는 친구들이 그것을 참조할 수 있기를 바랍니다.

<!DOCTYPE>
<html>

<head>
  <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
  <title>Document</title>
  <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
  <link rel="stylesheet" type="text/css" href="css/mui.css" rel="external nofollow" />
  <style type="text/css">
    .in-out-translate-demo-wrapper {
      position: relative;
      height: 58px;
    }
    
    .in-out-translate-demo-wrapper button {
      position: absolute;
    }
    
    .in-out-translate-fade-enter-active,
    .in-out-translate-fade-leave-active {
      transition: all .5s;
      -webkit-transition: all .5s;
      -moz-transition: all .5s;
      -o-transition: all .5s;
    }
    
    .in-out-translate-fade-enter,
    .in-out-translate-fade-leave-active {
      opacity: 0;
    }
    
    .in-out-translate-fade-enter {
      transform: translateX(54px);
      -webkit-transform: translateX(54px);
      -moz-transform: translateX(54px);
      -o-transform: translateX(54px);
    }
    
    .in-out-translate-fade-leave-active {
      transform: translateX(-54px);
      -webkit-transform: translateX(-54px);
      -moz-transform: translateX(-54px);
      -o-transform: translateX(-54px);
    }
    
    .down-up-translate-fade-enter-active,
    .down-up-translate-fade-leave-active {
      transition: all .1s;
      -webkit-transition: all .1s;
      -moz-transition: all .1s;
      -o-transition: all .1s;
    }
    
    .down-up-translate-fade-enter,
    .down-up-translate-fade-leave-active {
      opacity: 1;
    }
    
    .down-up-translate-fade-enter {
      /*transform: translateY(40px);
      -webkit-transform: translateY(40px);
      -moz-transform: translateY(40px);
      -o-transform: translateY(40px);*/
    }
    
    .down-up-translate-fade-leave-active {
      transform: translateY(-50px);
      -webkit-transform: translateY(-50px);
      -moz-transform: translateY(-50px);
      -o-transform: translateY(-50px);
    }
    
    .num {
      /*position: relative;*/
      width: 100%;
      height: 50px;
      overflow: hidden;
    }
    
    .num .span {
      /*position: absolute;*/
      background: #0062CC;
      color: #fff;
      width: 30px;
      height: 50px;
      line-height: 50px;
      font-size: 40px;
      font-weight: bold;
      float: left;
      margin-right: 2px;
    }
    
    .num .span p {
      background: #0062CC;
      color: #fff;
      width: 30px;
      height: 50px;
      line-height: 50px;
      font-size: 40px;
      font-weight: bold;
    }
  </style>
</head>

<body>
  <p id="demo" class="demo">
    <p class="in-out-translate-demo-wrapper mui-text-center">
      <transition name="in-out-translate-fade">
        <button v-if="show" v-on:click="start" key="start" type="button" class="mui-btn mui-btn-blue mui-btn-outlined">开始</button>
        <button v-else key="end" v-on:click="end" type="button" class="mui-btn mui-btn-yellow mui-btn-outlined">结束</button>
      </transition>

    </p>
    <p class="num mui-text-center">
      <p class="span">
        <p>1</p>
      </p>       
      <p class="span">
        <transition name="down-up-translate-fade">
          <p :key="i">{{i}}</p>
        </transition>
      </p>
      <p class="span">
        <transition name="down-up-translate-fade">
          <p :key="j">{{j}}</p>
        </transition>
      </p>
      <p class="span">
        <p>*</p>
      </p>
      <p class="span">
        <p>*</p>
      </p> 
      <p class="span">
        <p>*</p>
      </p> 
      <p class="span">
        <p>*</p>
      </p>         
      <p class="span">
        <transition name="down-up-translate-fade">
          <p :key="k">{{k}}</p>
        </transition>
      </p>
      <p class="span">
        <transition name="down-up-translate-fade">
          <p :key="l">{{l}}</p>
        </transition>
      </p> 
      <p class="span">
        <transition name="down-up-translate-fade">
          <p :key="i">{{i}}</p>
        </transition>
      </p>
      <p class="span">
        <transition name="down-up-translate-fade">
          <p :key="j">{{j}}</p>
        </transition>
      </p>       
    </p>
  </p>
  <!--<script src="https://cdnjs.cloudflare.com/ajax/libs/velocity/1.5.0/velocity.min.js"></script>-->
  <script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
  <script type="text/javascript">
    
    new Vue({
      el: &#39;#demo&#39;,
      data: {
        show: true,
        i: 0,
        j:0,
        k: 0,
        l: 0,
        interval: null
      },
      methods: {
        start: function() {
          this.show = !this.show
          var _this = this;

          if(!this.interval) {
            this.interval = setInterval(function() {
              _this.i = Math.floor(Math.random() * 10);
              _this.j = Math.floor(Math.random() * 10);
              _this.k = Math.floor(Math.random() * 10);
              _this.l = Math.floor(Math.random() * 10);
            }, 10)
          }
        },
        end: function() {
          this.show = !this.show

          clearInterval(this.interval)
          this.interval = null
        }
      }
    })
  </script>
</body>

관련 권장사항:

PHP 복권 함수 예제

PHP가 jQuery 및 Mysql을 사용하여 복권 프로그램을 구현하는 방법에 대한 예

PHP가 복권 확률 계산 알고리즘을 구현하는 방법 공유 예

위 내용은 Vue는 휴대폰 번호 복권을 위아래로 스크롤하는 애니메이션 예시 공유를 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.