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


Posted in Javascript onMarch 06, 2017

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

先看最终效果。

微信小程序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
}

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

Javascript 相关文章推荐
flash 得到自身url参数的代码
Nov 15 Javascript
使用jquery的ajax需要注意的地方dataType的设置
Aug 12 Javascript
JS截取字符串常用方法详细整理
Oct 28 Javascript
js跨域访问示例(客户端/服务端)
May 19 Javascript
node.js中的buffer.fill方法使用说明
Dec 14 Javascript
JS操作JSON方法总结(推荐)
Jun 14 Javascript
jstl中判断list中是否包含某个值的简单方法
Oct 14 Javascript
纯js实现倒计时功能
Jan 06 Javascript
web.js.字符串与正则表达式操作
May 13 Javascript
iframe高度自适应及隐藏滚动条的实例详解
Sep 29 Javascript
取消Bootstrap的dropdown-menu点击默认关闭事件方法
Aug 10 Javascript
动态内存分配导致影响Javascript性能的问题
Dec 18 Javascript
Js自动截取字符串长度,添加省略号(……)的实现方法
Mar 06 #Javascript
Bootstrap显示与隐藏简单实现代码
Mar 06 #Javascript
jQuery时间验证和转换为标准格式的时间格式
Mar 06 #Javascript
Bootstrap导航中表单简单实现代码
Mar 06 #Javascript
基于JS实现仿百度百家主页的轮播图效果
Mar 06 #Javascript
JS字符串长度判断,超出进行自动截取的实例(支持中文)
Mar 06 #Javascript
Bootstrap导航简单实现代码
Mar 06 #Javascript
You might like
PHP生成Flash动画的实现代码
2010/03/12 PHP
php防止sql注入示例分析和几种常见攻击正则表达式
2014/01/12 PHP
浅谈PHP表单提交(POST&amp;GET&amp;URL编/解码)
2017/04/03 PHP
理解Javascript_12_执行模型浅析
2010/10/18 Javascript
jQuery实现瀑布流的取巧做法分享
2015/01/12 Javascript
JS函数this的用法实例分析
2015/02/05 Javascript
Lab.js初次使用笔记
2015/02/28 Javascript
Java  Spring 事务回滚详解
2016/10/17 Javascript
Bootstrap源码学习笔记之bootstrap进度条
2016/12/24 Javascript
JS Select下拉框(支持输入模糊查询)
2017/02/04 Javascript
H5手机端多文件上传预览插件
2017/04/21 Javascript
Bootstrap modal只加载一次数据的解决办法(推荐)
2017/11/24 Javascript
vue2.0 自定义 饼状图 (Echarts)组件的方法
2018/03/02 Javascript
微信小程序实现弹出菜单功能
2018/06/12 Javascript
vue.js指令v-for使用以及下标索引的获取
2019/01/31 Javascript
微信小程序如何调用图片接口API并居中显示
2019/06/29 Javascript
原生js实现购物车功能
2020/09/23 Javascript
uni-app 自定义底部导航栏的实现
2020/12/11 Javascript
python 日期操作类代码
2018/05/05 Python
django ManyToManyField多对多关系的实例详解
2019/08/09 Python
Python+Tensorflow+CNN实现车牌识别的示例代码
2019/10/11 Python
使用Python+selenium实现第一个自动化测试脚本
2020/03/17 Python
Python如何实现定时器功能
2020/05/28 Python
python使用QQ邮箱实现自动发送邮件
2020/06/22 Python
Python实现列表索引批量删除的5种方法
2020/11/16 Python
Pandas中两个dataframe的交集和差集的示例代码
2020/12/13 Python
基础的CSS3弹性盒Flexbox布局使用实例
2016/04/08 HTML / CSS
CSS3径向渐变之大鱼吃小鱼之孤单的大鱼
2016/04/26 HTML / CSS
HTML5新表单元素_动力节点Java学院整理
2017/07/12 HTML / CSS
自主招生自荐信范文
2013/12/04 职场文书
新年联欢会主持词
2014/03/27 职场文书
优秀纪检干部材料
2014/08/27 职场文书
西柏坡导游词
2015/02/05 职场文书
高中政治教师教学反思
2016/02/23 职场文书
公文写作:教你写“建议书”
2019/05/07 职场文书
python超详细实现完整学生成绩管理系统
2022/03/17 Python