vue设置scrollTop不起作用

5 篇文章 0 订阅

今天遇到一个小问题vue设置滚动条高度一直为0。解决方法放在下边。

在这里一定要加上this.$nextTick()方法,否则document.querySelector(“.article”).scrollTop的值永远为0,不会赋值成功的

methods: {
	gundong() {
		this.time = '60' //时间
		this.article = document.querySelector('.article')//获取dom
		this.aHeight = this.article.scrollHeight - 500 //页面卷上去的高度=页面可是高度-500    500是可视区域的高度自己设置的
		this.sudu = this.aHeight / this.time / 5 //高度/时间=每秒的步长  再除以5 是0.2s的步长
		this.timer = setInterval(() => {
			this.$nextTick(() => {
				this.article.scrollTop += this.sudu 
			})
			if(this.article.scrollTop > this.aHeight - 1) {//因为被卷去的高度会存在误差所以-1 
				clearInterval(this.timer)
			}
		}, 200)
	},
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值