小程序scroll-view组件纵向滚动返回顶部

功能说明

当开发分类页面时,常见的效果如下:

分类
当左侧一级分类被选择之后,右侧的二级分类向下滚动后,再次点击左侧一级分类进行分类切换,二级分类应该立刻恢复到顶部。

实现方案

首先,界面滚动的效果可以利用小程序中的scroll-view组件来实现,例如:

<scroll-view class="left-scroll-view" scroll-y >
   <block v-for="(item, i) in cateList" :key="i">
     <view :class="['left-scroll-view-item', i === active ? 'active' : '']" @click="activeChanged(i)">
       {{item.cat_name}}
     </view>
   </block>
 </scroll-view>

在确定了基本的布局后,就可以来实现切换一级分类时二级分类区域滚动条恢复到顶部的效果 。

首先在data中创建scrollTop属性,值为0。

data() {
  return {
     scrollTop: 0
   };
 },

其次将data中的scrollTop动态绑定到二级分类的scroll-view组件上的scroll-top属性上。

<scroll-view class="right-scroll-view" scroll-y  :scroll-top="scrollTop">
</scroll-view>

当点击左侧一级菜单时,在监听的单击事件的事件处理函数中,将scrollTop的值进行如下的设置:

this.scrollTop = this.scrollTop === 0 ? 1 : 0

为什么要设置为0 或者1,是因为scroll-view组件的scroll-top属性值如果第一次和第二次赋值相同,则会没有效果。所以这里设置为0或者1,保证每次赋值并不相同,虽然值并不是0,但是视觉效果并不会有太多出入。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值