首 页 行业热点 新车 试驾评测 养车用车 车型库
当前位置:首页vue实现手机号码抽奖上下滚动动画示例

vue实现手机号码抽奖上下滚动动画示例

2020-11-27 来源:好土汽车网
导读 vue实现手机号码抽奖上下滚动动画示例:本文介绍了vue实现手机号码抽奖上下滚动动画示例,分享给大家。具体如下: <!DOCTYPE> <html> <head> <meta http-equiv=Content-type content=text/html; charset=utf-8 /> <t

本文介绍了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 div {
 background: #0062CC;
 color: #fff;
 width: 30px;
 height: 50px;
 line-height: 50px;
 font-size: 40px;
 font-weight: bold;
 }
 </style>
</head>

<body>
 <div id="demo" class="demo">
 <div 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>

 </div>
 <div class="num mui-text-center">
 <div class="span">
 <div>1</div>
 </div> 
 <div class="span">
 <transition name="down-up-translate-fade">
 <div :key="i">{{i}}</div>
 </transition>
 </div>
 <div class="span">
 <transition name="down-up-translate-fade">
 <div :key="j">{{j}}</div>
 </transition>
 </div>
 <div class="span">
 <div>*</div>
 </div>
 <div class="span">
 <div>*</div>
 </div> 
 <div class="span">
 <div>*</div>
 </div> 
 <div class="span">
 <div>*</div>
 </div> 
 <div class="span">
 <transition name="down-up-translate-fade">
 <div :key="k">{{k}}</div>
 </transition>
 </div>
 <div class="span">
 <transition name="down-up-translate-fade">
 <div :key="l">{{l}}</div>
 </transition>
 </div> 
 <div class="span">
 <transition name="down-up-translate-fade">
 <div :key="i">{{i}}</div>
 </transition>
 </div>
 <div class="span">
 <transition name="down-up-translate-fade">
 <div :key="j">{{j}}</div>
 </transition>
 </div> 
 </div>
 </div>
 <!--<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: '#demo',
 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>

 

显示全文