最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue組件實現數字滾動抽獎效果

 更新時間:2022年03月08日 11:11:24   作者:遺?忘?  
這篇文章主要為大家詳細介紹了Vue組件實現數字滾動抽獎效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Vue組件實現數字滾動抽獎效果的具體代碼,供大家參考,具體內容如下

可調整數字滾動速度,可指定開獎延遲時間,可指定開獎數字,按個人需求自行改動(錄了個效果供參考,臨時找的錄屏,表介意)
不一一精簡了

組件代碼

<template>
?? ?<div class="info-span04" style="color: #333333;">
?? ??? ?中獎號碼:
?? ??? ?<div style="vertical-align: middle;display: inline-block;">
?? ??? ??? ?<div class="openNumber" v-for="(item, index) in awardCode">
?? ??? ??? ??? ?<div class="num mui-text-center">
?? ??? ??? ??? ??? ?<div class="span value">
?? ??? ??? ??? ??? ??? ?<transition name="down-up-translate-fade">
?? ??? ??? ??? ??? ??? ??? ?<div :key="item.value">{{item.value}}</div>
?? ??? ??? ??? ??? ??? ?</transition>
?? ??? ??? ??? ??? ?</div>
?? ??? ??? ??? ?</div>
?? ??? ??? ?</div>
?? ??? ?</div>
?? ?</div>
</template>
<script>
?? ?export default {
?? ??? ?name: 'numberRolling',
?? ??? ?data () {
?? ??? ??? ?return {
?? ??? ??? ??? ?interval: null,
?? ??? ??? ??? ?interval_one: null,
?? ??? ??? ??? ?interval_two: null,
?? ??? ??? ??? ?awardCode: [
?? ??? ??? ??? ??? ?{name: 'oneDigit', value: '?'},
?? ??? ??? ??? ??? ?{name: 'tenDigit', value: '?'},
?? ??? ??? ??? ??? ?{name: 'hundredsDigit', value: '?'}
?? ??? ??? ??? ?],
?? ??? ??? ?}
?? ??? ?},
?? ??? ?props:{
?? ??? ??? ?
?? ??? ?},
?? ??? ?// 開獎效果方法
?? ??? ?methods: {
?? ??? ??? ?start() {
?? ??? ??? ??? ?var _this = this;
?? ??? ??? ??? ?if (!this.interval) {
?? ??? ??? ??? ??? ?let i = 0
?? ??? ??? ??? ??? ?this.interval = setInterval(function() {
?? ??? ??? ??? ??? ??? ?_this.awardCode[0].value = ++i <= 9 ? i : (i=-1,++i)
?? ??? ??? ??? ??? ?}, 100)
?? ??? ??? ??? ?}
?? ??? ??? ?},
?? ??? ??? ?end(i) {
?? ??? ??? ??? ?this.awardCode[0].value = i;
?? ??? ??? ??? ?this.show = !this.show
?? ??? ??? ??? ?clearInterval(this.interval)
?? ??? ??? ??? ?this.interval = null
?? ??? ??? ?},
?? ??? ??? ?start_one() {
?? ??? ??? ??? ?var _this = this;
?? ??? ??? ??? ?if (!this.interval_one) {
?? ??? ??? ??? ??? ?let j = 0
?? ??? ??? ??? ??? ?this.interval_one = setInterval(function() {
?? ??? ??? ??? ??? ??? ?_this.awardCode[1].value = ++j <= 9 ? j : (j=-1,++j)
?? ??? ??? ??? ??? ?}, 100)
?? ??? ??? ??? ?}
?? ??? ??? ?},
?? ??? ??? ?end_one(j) {
?? ??? ??? ??? ?this.awardCode[1].value = j;
?? ??? ??? ??? ?clearInterval(this.interval_one)
?? ??? ??? ??? ?this.interval_one = null
?? ??? ??? ?},
?? ??? ??? ?start_two() {
?? ??? ??? ??? ?this.show_two = !this.show_two
?? ??? ??? ??? ?var _this = this;
?? ??? ??? ??? ?let k = 0
?? ??? ??? ??? ?if (!this.interval_two) {
?? ??? ??? ??? ??? ?this.interval_two = setInterval(function() {
?? ??? ??? ??? ??? ??? ?// _this.k = Math.floor(Math.random() * 10);
?? ??? ??? ??? ??? ??? ?// if (k < 10) {
?? ??? ??? ??? ??? ??? ?// ?? ?_this.awardCode[2].value = k++;
?? ??? ??? ??? ??? ??? ?// } else {
?? ??? ??? ??? ??? ??? ?// ?? ?k = 0
?? ??? ??? ??? ??? ??? ?// ?? ?_this.awardCode[2].value = k++;
?? ??? ??? ??? ??? ??? ?// }
?? ??? ??? ??? ??? ??? ?_this.awardCode[2].value = ++k <= 9 ? k : (k=-1,++k)
?? ??? ??? ??? ??? ?}, 100)
?? ??? ??? ??? ?}
?? ??? ??? ?},
?? ??? ??? ?end_two(k) {
?? ??? ??? ??? ?this.awardCode[2].value = k;
?? ??? ??? ??? ?this.show_two = !this.show_two
?? ??? ??? ??? ?clearInterval(this.interval_two)
?? ??? ??? ??? ?this.interval_two = null
?? ??? ??? ?},
?? ??? ??? ?prizeNumber(code) {
?? ??? ??? ??? ?this.awardCode[0].value = code.substr(0,1)
?? ??? ??? ??? ?this.awardCode[1].value = code.substr(1,1)
?? ??? ??? ??? ?this.awardCode[2].value = code.substr(2,1)
?? ??? ??? ?},
?? ??? ?},
?? ??? ?beforeDestroy: function() {
?? ??? ??? ?if(this.interval){
?? ??? ??? ? ?clearInterval(this.interval)
?? ??? ??? ?}
?? ??? ??? ?if(this.interval_one){
?? ??? ??? ? ?clearInterval(this.interval_one)
?? ??? ??? ?}
?? ??? ??? ?if(this.interval_two){
?? ??? ??? ? ?clearInterval(this.interval_two)
?? ??? ??? ?}
?? ??? ?}
?? ?}
</script>
<style lang="scss" scoped>
?? ?.openNumber {
?? ??? ?display: inline-block;
?? ??? ?width: vw(52);
?? ??? ?height: vw(52);
?? ??? ?padding-right: vw(36);
?? ??? ?.num {
?? ??? ??? ?width: vw(52);
?? ??? ??? ?height: vw(52);
?? ??? ??? ?overflow: hidden;
?? ??? ??? ?.span {
?? ??? ??? ??? ?color: #fff;
?? ??? ??? ??? ?width: vw(52);
?? ??? ??? ??? ?height: vw(52);
?? ??? ??? ??? ?font-weight: bold;
?? ??? ??? ??? ?float: left;
?? ??? ??? ??? ?.span div {
?? ??? ??? ??? ??? ?text-align: center;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ??? ?.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-leave-active {
?? ??? ??? ??? ?transform: translateY(-50px);
?? ??? ??? ??? ?-webkit-transform: translateY(-50px);
?? ??? ??? ??? ?-moz-transform: translateY(-50px);
?? ??? ??? ??? ?-o-transform: translateY(-50px);
?? ??? ??? ?}
?? ??? ??? ?.value {
?? ??? ??? ??? ?background: url('../images/pokinhall-toBeAwarded.png') no-repeat top center;
?? ??? ??? ??? ?background-size: 100% 100%;
?? ??? ??? ??? ?width: vw(52);
?? ??? ??? ??? ?height: vw(52);
?? ??? ??? ??? ?line-height: vw(52);
?? ??? ??? ??? ?font-size: 22px;
?? ??? ??? ??? ?font-weight: bold;
?? ??? ??? ?}
?? ??? ?}
?? ?}
</style>

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

相關文章

  • vue3過渡動畫的詳解

    vue3過渡動畫的詳解

    這篇文章主要為大家詳細介紹了vue3過渡動畫,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • 關于vue中@click.native.prevent的說明

    關于vue中@click.native.prevent的說明

    這篇文章主要介紹了關于vue中@click.native.prevent的說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 讓ChatGPT解讀Vue3源碼過程解析

    讓ChatGPT解讀Vue3源碼過程解析

    這篇文章主要為大家介紹了讓ChatGPT解讀Vue3源碼過程解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-02-02
  • vue組件學習教程

    vue組件學習教程

    這篇文章主要為大家詳細介紹了vue組件學習教程,根據Vue官方文檔學習的筆記,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • Vite開發(fā)環(huán)境搭建詳解

    Vite開發(fā)環(huán)境搭建詳解

    Vite是一款非常輕量級的Web開發(fā)框架,它可以幫助開發(fā)者快速搭建一個開發(fā)環(huán)境。Vite搭建的開發(fā)環(huán)境可以提供更快的編譯速度,更少的配置,更好的性能和更多的開發(fā)者友好性,使開發(fā)者可以更快地構建出功能強大的Web應用程序。
    2023-02-02
  • 在vue項目中使用Nprogress.js進度條的方法

    在vue項目中使用Nprogress.js進度條的方法

    NProgress.js是輕量級的進度條組件,使用簡便,可以很方便集成到單頁面應用中。這篇文章主要介紹了在vue項目中使用Nprogress.js進度條的方法,需要的朋友可以參考下
    2018-01-01
  • Vue不同項目之間傳遞、接收參數問題

    Vue不同項目之間傳遞、接收參數問題

    這篇文章主要介紹了Vue不同項目之間傳遞、接收參數問題,主要針對是登錄操作,我們?yōu)榱送瓿蒘SO(Single Sign On)的效果,認證和授權在UC完成,用戶發(fā)起資源請求,服務網關會進行過濾,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2023-04-04
  • Vue中$attrs和$listeners詳解以及使用方法

    Vue中$attrs和$listeners詳解以及使用方法

    最近在研究Vue的組件庫,之前也用過$attrs和$listeners,官方文檔描述的不太詳細,也沒有太好的例子,下面這篇文章主要給大家介紹了關于Vue中$attrs和$listeners詳解以及使用的相關資料,需要的朋友可以參考下
    2022-11-11
  • Vue Treeselect樹形下拉框的使用小結

    Vue Treeselect樹形下拉框的使用小結

    樹形下拉框是一個帶有下列樹形結構的下拉框,本文主要介紹了Vue Treeselect樹形下拉框的使用小結,具有一定的參考價值,感興趣的可以了解一下
    2023-10-10
  • Vue.js實現微信過渡動畫左右切換效果

    Vue.js實現微信過渡動畫左右切換效果

    這篇文章主要給大家介紹了利用Vue.js仿微信過渡動畫左右切換效果的相關資料,需要用到的技術棧是Vue+Vuex。文中通過示例代碼介紹的非常詳細,對大家具一定的參考學習價值,需要的朋友們下面來一起看看吧。
    2017-06-06

最新評論

克什克腾旗| 丁青县| 平和县| 健康| 松滋市| 塔城市| 丹东市| 长沙市| 夹江县| 江城| 山西省| 五指山市| 寿阳县| 嫩江县| 于都县| 正阳县| 炎陵县| 忻城县| 河南省| 塔城市| 马边| 湄潭县| 邵阳市| 南通市| 南汇区| 开鲁县| 日喀则市| 阿拉尔市| 湄潭县| 梁山县| 绍兴县| 兰州市| 资兴市| 拉孜县| 江门市| 通化县| 尼勒克县| 茶陵县| 永宁县| 喀喇沁旗| 营山县|