如何使用小程序做到回到顶部的效

这里小程序有个组件是可以实现的,那就是scroll-view组件,他具有很多的属性,其中我们要利用到以下两个属性来处理:

scroll-top Number   设置竖向滚动条位置
bindscroll EventHandle   滚动时触发,event.detail = {scrollLeft, scrollTop, scrollHeight, scrollWidth, deltaX, deltaY}

通过滚动触发事件,获取距离文档顶部的scrollTop值,当达到一定条件【>300】的时候,显示gotop层,针对这个层写点击事件,重新设置scroll-top值,偶然间发现设置scroll-top的一个bug,如果我下一次设置的值和本次scroll-top值是一样的,那么文档并不会有任何动作。因此我的做法是在0和1之间切换设置,具体做法如下:

<scroll-view style="height: 100%;" scroll-y="true" scroll-top="{{scrollTop.scroll_top}}" bindscroll="scrollTopFun">
<view style="height: 11111rpx; border: solid 1px red;">
123456
----{{test}}
</view>
</scroll-view>  

<view style="position: absolute; bottom: 50rpx; right: 30rpx; width: 120rpx; height: 120rpx; border: solid 1px green;" wx:if="{{scrollTop.goTop_show}}" catchtap="goTopFun"></view>

  JS:

Page({
  data: {

    test: "",
    scrollTop: {
      scroll_top: 0,
      goTop_show: false
    }
  },
  scrollTopFun: function (e) {
    console.log(e.detail);
    if (e.detail.scrollTop > 300) {//触发gotop的显示条件
      this.setData({
        ‘scrollTop.goTop_show‘: true
      });
      console.log(this.data.scrollTop)
    } else {
      this.setData({
        ‘scrollTop.goTop_show‘: false
      });
    }
  },
  goTopFun: function (e) {
    var _top = this.data.scrollTop.scroll_top;//发现设置scroll-top值不能和上一次的值一样,否则无效,所以这里加了个判断
    if (_top == 1) {
      _top = 0;
    } else {
      _top = 1;
    }
    this.setData({
      ‘scrollTop.scroll_top‘: _top
    });
    console.log("----");
    console.log(this.data.scrollTop)
  }
})

  

最终效果如下:

时间: 2024-10-19 00:55:15

如何使用小程序做到回到顶部的效的相关文章

【小程序】返回顶部wx.pageScrollTo和scroll-view的对比

一.wx.pageScrollTo(https://mp.weixin.qq.com/debug/wxadoc/dev/api/scroll.html) 1. 小程序中双击顶部的textbar.会默认回到顶部 2. 能够触发page的上拉(ReachBottom)和(PullDownRefresh)事件 3. 当页面中有使用position:fixed布局时,弹出键盘时,fixed布局部分和会闪屏 二.scroll-view(https://mp.weixin.qq.com/debug/wxad

微信小程序点击顶部导航栏切换样式

类似这样的效果 1 <view class='helpCateList'> 2 <!-- 类别 --> 3 <scroll-view class='scroll-view' scroll-x="true"> 4 <view class="item-content" wx:key="id" wx:for="{{helpCateList}}" wx:for-item="item&

官方问答--微信小程序常见FAQ (17.8.21-17.8.27)

给提问的开发者的建议:提问之前先查询 文档.通过社区右上角搜索搜索已经存在的问题. 写一个简明扼要的标题,并且正文描述清楚你的问题. 提交 BUG:需要带上基础库版本号,设备信息(iOS, Android,开发工具等等),操作系统信息(系统版本),以及可以让他人重现的信息,最好能够提供重现 demo. 对于提供信息过少的问题,会直接关闭,请提供完整信息以后重新打开问题.另外,对于如何做某某功能,可否做某某功能的问题,会直接关闭. 微信小程序常见FAQ(17.8.21-17.8.27) Q:1.5

微信小程序设计规范

微信小程序设计的基本原则是微信设计中心针对在微信类上线的小程序页面总结的设计指南及建议.以下设计原则都是基于对用户的尊重的基础上的,旨在微信生态类建立有号.高效.一致的用户体验的同时,最大程度顺应和支持各业务需求设计,实现用户与程序的共赢. 一.友好礼貌 为了避免用户在微信中使用小程序服务时,注意力被周围复杂环境干扰,小程序哎设计时应该注意减少无关的设计元素对用户目标干扰,礼貌地向用户展示程序侧提供的服务,友好地引导用户进行操作. 1. 重点突出 每个页面都应有明确的重点,以便于用户每进入一个新

微信小程序-整理各种小程序源码和资料免费下载

微信小程序整理下载 [小程序源码]微信小程序-车源宝微信版 [小程序源码]小程序-微赞社区(论坛demo) [小程序源码]微信小程序-收支账单 [小程序工具]微信小程序-日历 [小程序源码]小程序-在线聊天功能 [小程序源码]微信小程序-大好商城(新增功能天气查询和2048游戏) [小程序源码]微信小程序-查询号码归属地 [小程序源码]微信小程序-备忘录2 [小程序源码]微信小程序-QQ音乐 [小程序源码]小程序-货币汇率 [小程序源码]微信小程序-大学图书馆 [小程序源码]小程序-积分商城 [

js——页面回到顶部

很久都没有去慕课网学习学习了,刚恰好就看见了一个用的比较多的小例子——页面回到顶部,记得之前自己也是在初学web时,被这个坑了一回,因此今天特地拿来分享分享…… <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>页面回到顶部</title> <link rel="stylesheet&quo

微信小程序学习指南

作者:初雪链接:https://www.zhihu.com/question/50907897/answer/128494332来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 微信小程序正式公测, 张小龙全面阐述小程序,定档1月9日上线(附90分钟演讲全文) ... 前言:新人第一坑,跳坑指南:修改后,必须保存:ctrl+S: 1:官方工具:https://mp.weixin.qq.com/debug/w ... tml?t=1476434678461 2:简易教

微信小程序(二)框架

配置 配置app.json例子: { "pages": [ "pages/index/index", "pages/logs/index" ], "window": { "navigationBarTitleText": "Demo" }, "tabBar": { "list": [{ "pagePath": "pag

小程序能不能关注公众号?

早些天还收到留言问"小程序能不能关注公众号",这不就来了. 今天,小程序公众号关注组件上线.商户小程序使用了组件后,用户线下扫码使用小程序时,可以快捷关注公众号了. 真的没看错,这次是大家期盼已久的功能,不用再想什么其他引流大招了,加入这个组件,小程序用户沉淀到公众号,妥妥搞定! 具体如下: 小程序开发者在小程序内设置公众号关注组件时,需小程序与公众号主体一致.设置完成后,当用户线下扫码进入小程序时,就能便捷地关注公众号,并获取更好.更完整的服务了. 设置了关注公众号功能的商家,无需在