有时候我们在一些网站上会看到,广告栏消息有上下滚动的展示效果,那么这个功能是怎样实现的呢?这篇文章就给大家分享使用vue实现广告消息上下滚动的功能,实现代码和效果如下:
html部分
<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部分
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部分
.marquee_top {
transition: all 0.5s;
margin-top: -26px; /* 容器高度 */
}
效果:

(图中有个地方直接改变内容的为gif图片首尾相接部分)
关于vue实现广告上下滚动效果的代码就介绍到这,上述实例具有一定的借鉴价值,感兴趣的朋友可以参考学习,希望能对大家有帮助,想要了解更多大家可以关注群英网络其它相关文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理