微信小程序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 相关文章推荐
Ajax::prototype 源码解读
Jan 22 Javascript
用Javascript实现锚点(Anchor)间平滑跳转
Sep 08 Javascript
Javascript 面试题随笔
Mar 31 Javascript
最短的javascript:地址栏载入脚本代码
Oct 13 Javascript
如何让easyui gridview 宽度自适应窗口改变及fitColumns应用
Jan 25 Javascript
JavaScript实现级联菜单的方法
Jun 29 Javascript
项目实践一图片上传之form表单还是base64前端图片压缩(前端图片压缩)
Jul 28 Javascript
自动化测试读写64位操作系统的注册表
Aug 15 Javascript
浅谈js的ajax的异步和同步请求的问题
Oct 07 Javascript
javascript和php使用ajax通信传递JSON的实例
Aug 21 Javascript
vue实现行列转换的一种方法
Aug 06 Javascript
如何利用JavaScript编写一个格斗小游戏
Jan 06 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图片等比缩放类SimpleImage使用方法和使用实例分享
2014/04/10 PHP
两种php给图片加水印的实现代码
2020/04/18 PHP
php等比例缩放图片及剪切图片代码分享
2016/02/13 PHP
php 截取GBK文档某个位置开始的n个字符方法
2017/03/08 PHP
PHP的mysqli_select_db()函数讲解
2019/01/23 PHP
在laravel中实现将查询的对象转换为多维数组的函数
2019/10/21 PHP
JavaScript 盒模型 尺寸深入理解
2012/12/31 Javascript
jquery入门必备的基本认识及实例(整理)
2013/06/24 Javascript
浅析jquery的作用与优势
2013/12/02 Javascript
js仿百度登录页实现拖动窗口效果
2016/03/11 Javascript
js入门之Function函数的使用方法【新手必看】
2016/11/22 Javascript
实例解析jQuery工具函数
2016/12/01 Javascript
Vue.js进行查询操作的实例详解
2017/08/25 Javascript
Angular自定义组件实现数据双向数据绑定的实例
2017/12/11 Javascript
JS抛物线动画实例制作
2018/02/24 Javascript
jQuery中ajax请求后台返回json数据并渲染HTML的方法
2018/08/08 jQuery
JavaScript作用域、闭包、对象与原型链概念及用法实例总结
2018/08/20 Javascript
vue组件之间数据传递的方法实例分析
2019/02/12 Javascript
vue-cli history模式实现tomcat部署报404的解决方式
2019/09/06 Javascript
vue 项目软键盘回车触发搜索事件
2020/09/09 Javascript
python中as用法实例分析
2015/04/30 Python
python中urlparse模块介绍与使用示例
2017/11/19 Python
Python SqlAlchemy动态添加数据表字段实例解析
2018/02/07 Python
[原创]Python入门教程2. 字符串基本操作【运算、格式化输出、常用函数】
2018/10/29 Python
Python pip安装模块提示错误解决方案
2020/05/22 Python
在tensorflow实现直接读取网络的参数(weight and bias)的值
2020/06/24 Python
澳大利亚在线百货商店:Real Smart
2017/08/13 全球购物
香蕉共和国工厂店:Banana Republic Factory
2018/06/09 全球购物
SEPHORA丝芙兰德国官方购物网站:化妆品、护肤品和香水
2020/01/21 全球购物
英语翻译系毕业生求职信
2013/09/29 职场文书
服务行业个人求职的自我评价
2013/12/12 职场文书
快餐店的创业计划书范文
2014/01/29 职场文书
小学中秋节活动方案
2014/02/06 职场文书
公司保密承诺书
2014/03/27 职场文书
中职生自荐信范文
2014/06/15 职场文书
学校计划生育责任书
2015/05/09 职场文书