本文实例为大家分享了vue实现广告栏上下滚动效果的具体代码,供大家参考,具体内容如下
html部分
1
2
3
4
5
6
7
8
9
10
11
|
< div class = "roll" > < img src = "xxx.jpg" alt /> < ul :class = "{marquee_top:animate}" > < li v-for = "(item, index) in msg" :key = "index" > < span class = "txtWrap" > < span class = "txt" >{{item.name}}抢得商品{{item.goods}}</ span > < span class = "txt" >已有123人申请</ span > </ span > </ li > </ ul > </ div > |
js部分
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
data () { return { msg: [ { name: '张**' , goods: '牙膏' }, { name: '王**' , goods: '牙刷' }, { name: '钟**' , goods: '肥皂' } ], animate: false , setInTime: '' // 定时器 } }, mounted:{ this .setInTime = setInterval( this .showMarquee, 3000) }, destroyed () { clearInterval( this .setInTime) // 页面销毁时清除定时器 }, methods:{ // 滚动栏滚动 showMarquee () { this .animate = true setTimeout(() => { this .msg.push( this .msg[0]) this .msg.shift() this .animate = false }, 500) }, } |
关键css部分
1
2
3
4
|
.marquee_top { transition: all 0.5 s; margin-top : -26px ; /* 容器高度 */ } |
效果:
(图中有个地方直接改变内容的为gif图片首尾相接部分)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/weixin_45140661/article/details/110089013