一个常见的文字无缝滚动效果

基本结构:

 <div class="container">

            <div class="marquee-wrap">

                <ul class="marquee-list" :class="{'animate-up':animateUp}">

                    <li v-for="(item,index) in arr" :key="index">{{item}}</li>

                </ul>

            </div>

  </div>

--------------------------------------------------------------------------------------------

:css:

 .marquee-wrap {

            width: 80%;

            height: 40px;

            background: rgba(0, 0, 0, 0.2);

            margin: 0 auto;

            overflow: hidden;

        }

        .marquee-wrap li {

            width: 100%;

            height: 100%;

            padding: 0 20px;

            list-style: none;

            line-height: 40px;

            text-align: center;

            color: #fff;

        }

        .animate-up {

            transition: all 0.5s ease-in-out;

            transform: translateY(-40px);

        }

----------------------------------------------------------------------

   mounted() {

            setInterval(this.scrollAnimate, 2000)

},

methods: {

            scrollAnimate() {

                this.animateUp = true;

                setTimeout(() => {

                    this.arr.push(this.arr[0])

                    this.arr.shift()

                    this.animateUp = false

                }, 500);

                this.$once('hook:beforeDestroy', () => {

                    clearInterval(timer)

                })

            },

}

---------------------------完整代码示例-------------------------------

特别注意:scrollAniamation函数中的定时器是setTimeout

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值