微信小程序实现移动端滑动分页效果(ajax)


Posted in Javascript onJune 13, 2017

一般在PC上我们要分页都是通过上一页和下一页来实现的,手机通过当下滑到一定程度的时候自动加载下一页面。

实现思路:首先加载部分数据,当下滑到某个元素可见的时候,如果还有数据,则新发送请求,然后追加在当前页面。

/*
*<div class='topicBox' id='listBox'>
*</div>
*/
 

//判断元素是否进入可视区域 
function see(objLiLast) {
 //浏览器可视区域的高度 
 var see = document.documentElement.clientHeight;
 //滚动条滑动的距离 
 var winScroll = $(this).scrollTop();
 //距离浏览器顶部的 
 var lastLisee = $(objLiLast).offset().top;
 return lastLisee < (see + winScroll) ? true : false;
}
//预设页码为当前第一页
var page = 1;
//获得总页码
var pageTotal = parseInt($('#allpage').val());
//是否请求出AJAX的“开关”; 
var onOff = true;
$(window).scroll(function () {
//拖动滚条时,是否发送AJAX的一个“开关” 
$('.topicBox').each(function () {
//引用最后一个div 
var lastLi = $('.topicBox:last');
//调用是否进入可视区域函数 
var isSee = see(lastLi);
if (isSee && onOff && page < pageTotal) {//最底部元素可见,开关开启而且还有下拉
//$('#loadNext').show(); //显示正在加载图标
onOff = false;
$.ajax({
url: '/GetPageData',
type: 'GET',
dataType: 'json',
data: {
page: page+1
},
asyc: false,
success: function (result) {
if (result.status == 'success') {
var data = result.result;
for (var i = 0; i < data.length; i++) {
//to do coding ...
};
}
//$('#loadNext').hide(); //隐藏正在加载
onOff = true;
page ++;
}
});

}
});
});

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

Javascript 相关文章推荐
用Javascript实现Sleep暂停功能代码
Sep 03 Javascript
深入理解JavaScript定时机制
Oct 29 Javascript
js日期对象兼容性的处理方法
Jan 28 Javascript
DOM基础教程之使用DOM控制表单
Jan 20 Javascript
javascript中scrollTop详解
Apr 13 Javascript
教你使用javascript简单写一个页面模板引擎
May 05 Javascript
Js类的静态方法与实例方法区分及jQuery拓展的两种方法
Jun 03 Javascript
jQuery的层级查找方式分析
Jun 16 Javascript
如何给ss bash 写一个 WEB 端查看流量的页面
Mar 23 Javascript
BootStrap Fileinput插件和Bootstrap table表格插件相结合实现文件上传、预览、提交的导入Excel数据操作步骤
Aug 07 Javascript
AngularJs 延时器、计时器实例代码
Sep 16 Javascript
vue使用refs获取嵌套组件中的值过程
Mar 31 Vue.js
详解AngularJs路由之Ui-router-resolve(预加载)
Jun 13 #Javascript
微信小程序动态显示项目倒计时效果
Jun 13 #Javascript
深究AngularJS之ui-router详解
Jun 13 #Javascript
微信小程序自定义导航隐藏和显示功能
Jun 13 #Javascript
深究AngularJS——ng-checked(回写:带真实案例代码)
Jun 13 #Javascript
详解vue项目优化之按需加载组件-使用webpack require.ensure
Jun 13 #Javascript
javascript checkbox/radio onchange不能兼容ie8处理办法
Jun 13 #Javascript
You might like
PHP安全配置详细说明
2011/09/26 PHP
用PHP提取中英文词语以及数字的首字母的方法介绍
2013/04/23 PHP
PHP json_encode中文乱码问题的解决办法
2013/09/09 PHP
php多用户读写文件冲突的解决办法
2013/11/06 PHP
5款适合PHP使用的HTML编辑器推荐
2015/07/03 PHP
Netbeans 8.2将支持PHP7 更精彩
2016/06/13 PHP
PHP简单实现循环链表功能示例
2017/11/10 PHP
使用PHPStorm+XDebug搭建单步调试环境
2017/11/19 PHP
thinkPHP框架自动填充原理与用法分析
2018/04/03 PHP
javascript 写类方式之八
2009/07/05 Javascript
jQuery学习笔记(3)--用jquery(插件)实现多选项卡功能
2013/04/08 Javascript
基于jquery实现的定时显示与隐藏div广告的实现代码
2013/08/22 Javascript
js 弹出框只弹一次(二次修改之后的)
2013/11/26 Javascript
AngularJS通过$sce输出html的方法
2016/09/22 Javascript
详解webpack模块加载器兼打包工具
2018/09/11 Javascript
JS实现的新闻列表自动滚动效果示例
2019/01/30 Javascript
17道题让你彻底理解JS中的类型转换
2019/08/08 Javascript
vue不操作dom实现图片轮播的示例代码
2019/12/18 Javascript
Vue实现跑马灯效果
2020/05/25 Javascript
python目录操作之python遍历文件夹后将结果存储为xml
2014/01/27 Python
pytorch: tensor类型的构建与相互转换实例
2018/07/26 Python
Python字典的基本用法实例分析【创建、增加、获取、修改、删除】
2019/03/05 Python
Django中的用户身份验证示例详解
2019/08/07 Python
详解字符串在Python内部是如何省内存的
2020/02/03 Python
基于Python获取docx/doc文件内容代码解析
2020/02/17 Python
在python下实现word2vec词向量训练与加载实例
2020/06/09 Python
利用纯CSS3实现动态的自行车特效源码
2017/01/20 HTML / CSS
IE10 Error.stack 让脚本调试更加方便快捷
2013/04/22 HTML / CSS
HTML5 3D书本翻页动画的实现示例
2019/08/28 HTML / CSS
海信商城:海信电视、科龙空调、容声冰箱官方专卖
2017/02/07 全球购物
印度第一网上礼品店:IGP.com
2020/02/06 全球购物
电子信息工程专业推荐信
2014/02/14 职场文书
高中同学会活动方案
2014/08/14 职场文书
辞职信标准格式
2015/02/27 职场文书
小学生2015教师节演讲稿
2015/03/19 职场文书
车辆挂靠协议书
2016/03/23 职场文书