微信小程序scroll-view实现横向滚动和上拉加载示例

发布时间 - 2026-01-10 23:27:22    点击率:

今天介绍微信小程序中scroll-view实现横向滚动和上拉加载的实现及需要注意的地方。

先看最终效果。

横向滚动

1.设置滚动项display:inline-block;

2.设置滚动视图容器white-space: nowrap;

3.滚动项不要用float

为什么会有以上三点要求呢?

其实横向滚动官方文档中是没有做太多说明的,只说明需要定义scroll-view滚动方向scroll-x=true允许横向滚动,但是我在实践的时候我发现,你要横向滚动,首先你得是一排吧。所以才发现需要定义滚动项及容器的一些属性,浮动是不能让所有的滚动项一排显示的。

上拉加载

复制代码 代码如下:
<scroll-view scroll-y="true" bindscrolltolower="pullUpLoad" style="height: 58%;" class="content-wrap">

实现上拉加载,只需要绑定bindscrolltolower 事件处理,当滚动到底部/左边的时候,触发这个处理函数,逻辑上就是去请求下一页的数据,并且视图上显示正在加载的样式,当数据请求成功,将其拼合到之前的数据中,并隐藏正在加载的样式。

//下拉加载
pullUpLoad: function(){
  var that = this;
  console.log("====下拉====")
  if (!that.data.hidden) {
    that.data.params.pageNo += 1;
    that.setData({
      params: that.data.params,
    })
    if(that.data.params.pageNo <= that.data.totalPages){
      that.setData({
        hidden: true,
      })
      that.getShareList();
    }else{
      that.setData({
        hidden: false,
      })
    }
  }
}

如何设置scroll-view满屏滚动

文档中说到:使用竖向滚动时,需要给一个固定高度,通过 WXSS 设置 height。

那么我们想让小程序满屏滚动该如何设置高度呢,直接设置height:100%?好像不是很好用,原因是因为这个高度没有参照物,以前我们是设置body的高度,类似,我们这里发现小程序页面渲染出来的容器是Page,那我们就先设置Page的高度100%,再设置scroll-view高度100%,问题得到解决。

官方推荐的loading效果

onLoad:function(options){
  wx.showToast({
    title: '加载中',
    icon: 'loading',
    duration: 10000//loading时间
  });
  //wx.hideToast();隐藏loading
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# 小程序横向滚动  # scrollview横向滚动  # scrollview上拉加载  # 微信小程序通过js实现瀑布流布局详解  # web页面和微信小程序页面实现瀑布流效果  # 微信小程序实现瀑布流布局与无限加载的方法详解  # 微信小程序实现滚动加载更多的代码  # 微信小程序实现瀑布流分页滚动加载  # 加载  # 正在加载  # 文档  # 是因为  # 我在  # 太多  # 你要  # 下一页  # 说到  # 将其  # 能让  # 才发现  # 只需要  # 该如何  # 三点  # 想让  # 就先  # 绑定  # 你得  # 需要注意 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 焦点电影公司作品,电影焦点结局是什么?  Laravel如何生成API文档?(Swagger/OpenAPI教程)  Python自动化办公教程_ExcelWordPDF批量处理案例  如何在Windows 2008云服务器安全搭建网站?  桂林网站制作公司有哪些,桂林马拉松怎么报名?  Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】  javascript事件捕获机制【深入分析IE和DOM中的事件模型】  Laravel Debugbar怎么安装_Laravel调试工具栏配置指南  Java解压缩zip - 解压缩多个文件或文件夹实例  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  高性能网站服务器部署指南:稳定运行与安全配置优化方案  Android okhttputils现在进度显示实例代码  Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  Android自定义listview布局实现上拉加载下拉刷新功能  JavaScript如何实现类型判断_typeof和instanceof有什么区别  Claude怎样写约束型提示词_Claude约束提示词写法【教程】  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  高防服务器:AI智能防御DDoS攻击与数据安全保障  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  如何在建站主机中优化服务器配置?  网易LOFTER官网链接 老福特网页版登录地址  ,交易猫的商品怎么发布到网站上去?  如何有效防御Web建站篡改攻击?  Win11怎么关闭资讯和兴趣_Windows11任务栏设置隐藏小组件  如何在万网ECS上快速搭建专属网站?  中山网站推广排名,中山信息港登录入口?  原生JS获取元素集合的子元素宽度实例  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  如何在IIS中新建站点并解决端口绑定冲突?  linux写shell需要注意的问题(必看)  如何用IIS7快速搭建并优化网站站点?  java获取注册ip实例  laravel怎么使用数据库工厂(Factory)生成带有关联模型的数据_laravel Factory生成关联数据方法  Laravel怎么使用Session存储数据_Laravel会话管理与自定义驱动配置【详解】  Laravel如何处理文件下载请求?(Response示例)  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤  如何撰写建站申请书?关键要点有哪些?  EditPlus中的正则表达式 实战(4)  HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】  JS弹性运动实现方法分析  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  微信推文制作网站有哪些,怎么做微信推文,急?  Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践  高端企业智能建站程序:SEO优化与响应式模板定制开发  如何在万网自助建站平台快速创建网站?  如何用y主机助手快速搭建网站?  Laravel如何创建自定义Artisan命令?(代码示例)  开心动漫网站制作软件下载,十分开心动画为何停播?