没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
vue实现公告栏文字上下滚动效果的示例代码实现公告栏文字上下滚动效果的示例代码
主要介绍了vue实现公告栏文字上下滚动效果的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下
面随着小编来一起学习学习吧
本文详细的介绍了vue实现公告栏文字上下滚动效果的示例代码,分享给大家,具体入如下:
代码实现:
在项目结构的components中新建text-scroll.vue文件
<template>
<div class="text-container">
<transition class="" name="slide" mode="out-in">
<p class="text" :key="text.id">{{text.val}}</p>
</transition>
</div>
</template>
<script>
export default {
name: 'TextScroll',
props: {
dataList: {
type: Array,
default() {
return [];
},
},
},
data() {
return {
count: 0, // 当前索引
intervalId: null, // 定时器ID
playTime: 2000, // 定时器执行间隔
};
},
computed: {
text() {
return {
id: this.count,
val: this.dataList[this.count],
};
},
},
created() {
this.intervalId = setInterval(() => { // 定义定时器
this.getText();
}, this.playTime);
},
methods: {
getText() {
const len = this.dataList.length; // 获取数组长度
if (len === 0) {
return; // 当数组为空时,直接返回
}
if (this.count === len - 1) { // 当前为最后一个时
this.count = 0; // 从第一个开始
} else {
this.count++; // 自增
}
},
},
destroyed() {
clearInterval(this.intervalId); // 清除定时器
},
};
</script>
<style scoped>
.text-container{
font-size: 14px;
color: #F56B6B;
margin-right: 20px;
height: 60px;
}
.text {
text-align: right;
margin: auto 0;
}
.slide-enter-active, .slide-leave-active {
transition: all 1s;
}
.slide-enter{
transform: translateY(40px);
}
.slide-leave-to {
transform: translateY(-40px);
}
</style>
在header-bar组件使用
<text-scroll :dataList="noticeList"></text-scroll>
分析
transition标签
资源评论
- jacob2022-11-29资源使用价值高,内容详实,给了我很多新想法,感谢大佬分享~
weixin_38739942
- 粉丝: 5
- 资源: 954
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功