微信小程序开发之scroll-view

简介: 本文主要介绍通过scroll-view实现回至顶部,如下效果 一、页面代码 顶部的工具栏放一个查找按钮,滚动区域实现分页,目的就是为了点击上一页\下一页时,自动回到顶部。 scroll-view必须指定scroll-y属性和该区域的高度 查找 ...

本文主要介绍通过scroll-view实现回至顶部,如下效果

一、页面代码

顶部的工具栏放一个查找按钮,滚动区域实现分页,目的就是为了点击上一页\下一页时,自动回到顶部。

scroll-view必须指定scroll-y属性和该区域的高度

<view class="page">
  <view class="swiper-tab border-top">
    <view>
      <text class='text-primary'>查找</text>
    </view>
  </view>
  <view class="weui-panel weui-panel_access mt0 no_border">
    <scroll-view scroll-y style="height:{{scrollHeight}}px;" scroll-top="{{scrollTop}}">
      
      <view class="weui-panel__bd">
        <block wx:for="{{listdata}}" wx:key="{{item.Id}}">
          <navigator url="/pages/test/Show?id={{item.Id}}">
            <view class="weui-media-box weui-media-box_text">              
              <view class="weui-media-box__desc">{{item.Desc}}</view>
            </view>
          </navigator>
        </block>
      </view>
      <view class="weui-panel__ft">
        <view class="weui-cell weui-cell_access weui-cell_link">
          <view class="weui-cell__bd col-4 text-center" bindtap="prevPage">上一页</view>
          <view class="weui-cell__bd col-4 text-center">
            <picker bindchange='changePage' class="picker" value="{{currentPage-1}}" range="{{pageArray}}">
              <view>
                第{{pageArray[currentPage-1]}}页
              </view>
            </picker>
          </view>
          <view class="weui-cell__bd col-4 text-center" bindtap="nextPage">下一页</view>
        </view>
      </view>
    </scroll-view>
  </view>
</view>

二、脚本代码

scrollHeight是内容区域的高度,点击上一页\下一页时,回到顶部

Page({
  data: { 
    limit: 10,
    currentPage: 1,
    total: 0,
    pageArray: [], 
    scrollTop: 0,
    scrollHeight: 0
  },
  onLoad: function (options) { 
    var that =this;
    wx.getSystemInfo({
      success: function (res) {
        that.setData({ scrollHeight: res.windowHeight - 42 });
      }
    });  
    this.loadMainData();
  },
  loadMainData: function () {
    this.tapMove();
    //加载数据
  }, 
  onPullDownRefresh: function () {
    this.prevPage();
  },
  setPages: function (count) {
    var pages = new Array();
    for (var i = 0; i < count; i++) {
      pages.push(i + 1);
    }
    this.setData({ pageArray: pages });
  },
  prevPage: function () {
    if (this.data.currentPage > 1) {
      this.setData({ currentPage: this.data.currentPage - 1 });
      this.loadMainData();
    } else {
      msg.showToast({ title: '当前是第一页', icon: 'info' });
    }
  },
  nextPage: function () {
    if (this.data.currentPage < (this.data.total / this.data.limit)) {
      this.setData({ currentPage: this.data.currentPage + 1 });
      this.tapMove();
      this.loadMainData();
    } else {
      msg.showToast({ title: '当前是最后一页', icon: 'info' });
    }
  },
  changePage: function (e) {
    var page = parseInt(e.detail.value) + 1;
    this.setData({ currentPage: page });
    this.loadMainData();
  },
  tapMove: function (e) {
    this.setData({
      scrollTop:0
    })
  },
})


最近比较忙,就简单记录下

 

欢迎阅读本系列文章:微信小程序开发教程目录

 

相关文章
|
14天前
|
小程序 前端开发 API
小程序全栈开发中的多端适配与响应式布局
【4月更文挑战第12天】本文探讨了小程序全栈开发中的多端适配与响应式布局。多端适配涉及平台和设备适应,确保统一用户体验;响应式布局利用媒体查询和弹性布局维持不同设备的布局一致性。实践中,开发者可借助跨平台框架实现多平台开发,运用响应式布局技术适应不同设备。同时,注意兼容性、性能优化和用户体验,以提升小程序质量和用户体验。通过这些方法,开发者能更好地掌握小程序全栈开发。
|
14天前
|
小程序 前端开发 API
微信小程序全栈开发中的异常处理与日志记录
【4月更文挑战第12天】本文探讨了微信小程序全栈开发中的异常处理和日志记录,强调其对确保应用稳定性和用户体验的重要性。异常处理涵盖前端(网络、页面跳转、用户输入、逻辑异常)和后端(数据库、API、业务逻辑)方面;日志记录则关注关键操作和异常情况的追踪。实践中,前端可利用try-catch处理异常,后端借助日志框架记录异常,同时采用集中式日志管理工具提升分析效率。开发者应注意安全性、性能和团队协作,以优化异常处理与日志记录流程。
|
14天前
|
小程序 安全 数据安全/隐私保护
微信小程序全栈开发中的身份认证与授权机制
【4月更文挑战第12天】本文探讨了微信小程序全栈开发中的身份认证与授权机制。身份认证包括手机号验证、微信登录和第三方登录,而授权机制涉及角色权限控制、ACL和OAuth 2.0。实践中,开发者可利用微信登录获取用户信息,集成第三方登录,以及实施角色和ACL进行权限控制。注意点包括安全性、用户体验和合规性,以保障小程序的安全运行和良好体验。通过这些方法,开发者能有效掌握小程序全栈开发技术。
|
14天前
|
小程序 前端开发 安全
小程序全栈开发中的跨域问题及其解决方案
【4月更文挑战第12天】本文探讨了小程序全栈开发中的跨域问题及其解决方案。跨域问题源于浏览器安全策略,主要体现在前后端分离、第三方服务集成和数据共享上。为解决此问题,开发者可采用CORS、JSONP、代理服务器、数据交换格式和域名策略等方法。实践中需注意安全性、兼容性和性能。通过掌握这些解决方案,开发者能更好地处理小程序的跨域问题,提升用户体验。
|
14天前
|
JavaScript 前端开发 小程序
微信小程序全栈开发之性能优化策略
【4月更文挑战第12天】本文探讨了微信小程序全栈开发的性能优化策略,包括前端的资源和渲染优化,如图片压缩、虚拟DOM、代码分割;后端的数据库和API优化,如索引创建、缓存使用、RESTful API设计;以及服务器的负载均衡和CDN加速。通过这些方法,开发者可提升小程序性能,优化用户体验,增强商业价值。
|
14天前
|
小程序 前端开发 JavaScript
微信小程序全栈开发中的PWA技术应用
【4月更文挑战第12天】本文探讨了微信小程序全栈开发中PWA技术的应用,PWA结合Web的开放性和原生应用的性能,提供离线访问、后台运行、桌面图标和原生体验。开发者可利用Service Worker实现离线访问,Worker处理后台运行,Web App Manifest添加桌面图标,CSS和JavaScript提升原生体验。实践中需注意兼容性、性能优化和用户体验。PWA技术能提升小程序的性能和用户体验,助力开发者打造优质小程序。
|
3天前
|
数据采集 存储 人工智能
【Python+微信】【企业微信开发入坑指北】4. 企业微信接入GPT,只需一个URL,自动获取文章总结
【Python+微信】【企业微信开发入坑指北】4. 企业微信接入GPT,只需一个URL,自动获取文章总结
13 0
|
3天前
|
人工智能 机器人 API
【Python+微信】【企业微信开发入坑指北】3. 如何利用企业微信API给微信群推送消息
【Python+微信】【企业微信开发入坑指北】3. 如何利用企业微信API给微信群推送消息
6 0
|
3天前
|
缓存 人工智能 API
【Python+微信】【企业微信开发入坑指北】2. 如何利用企业微信API主动给用户发应用消息
【Python+微信】【企业微信开发入坑指北】2. 如何利用企业微信API主动给用户发应用消息
7 0
|
14天前
|
小程序 前端开发 API
小程序全栈开发中的RESTful API设计
【4月更文挑战第12天】本文探讨了小程序全栈开发中的RESTful API设计,旨在帮助开发者理解和掌握相关技术。RESTful API基于REST架构风格,利用HTTP协议进行数据交互,遵循URI、客户端-服务器架构、无状态通信、标准HTTP方法和资源表述等原则。在小程序开发中,通过资源建模、设计API接口、定义资源表述及实现接口,实现前后端高效分离,提升开发效率和代码质量。小程序前端利用微信API与后端交互,确保数据流通。掌握这些实践将优化小程序全栈开发。

热门文章

最新文章