uni设置scroll-top为0无效

uniapp里面使用scroll-view 组件,动态设置scroll-top 属性来控制滚动高度,但是当想滚动到起始位置时 设置动态值为0 时无效的。

具体原因还在找,但是找到了解决方法。

首先要定义一个变量记录滚动条的位置

<scroll-view :style="{'background-color': currentTheme.backgroundColor}" 
		@scroll="scrollChange" 
		:scroll-top="scrollTop"
		:scroll-with-animation="scrollAnimation"
		scroll-y="true" >

用 @scroll="scrollChange"  监听 滚动条变化

scrollChange (e) {
				this.lastScrollY = e.detail.scrollTop;
			},

定义一个变量 存滚动的位置

当需要滚动到 初始值的时候 

that.scrollAnimation = false;//是否有过度效果
				that.scrollTop = that.lastScrollY
				that.$nextTick(function(){
					that.scrollTop = 0;
				})

先将滚动的当前高度赋值给scrollTop 然后设置为0 就有效果了

其他情况如果直接设置无效时,也可以用类似的方法

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值