微信小程序实现移动端滑动分页效果(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 布尔型分析
Dec 22 Javascript
jquery 插件开发方法小结
Oct 23 Javascript
浅析jQuery事件之on()方法绑定多个选择器,多个事件
Apr 27 Javascript
jquery实现图片放大点击切换
Jun 06 jQuery
详解jQuery同步Ajax带来的UI线程阻塞问题及解决办法
Aug 09 jQuery
vue组件生命周期详解
Nov 07 Javascript
微信小程序手机号码验证功能的实例代码
Aug 28 Javascript
vue获取时间戳转换为日期格式代码实例
Apr 17 Javascript
Vue axios 将传递的json数据转为form data的例子
Oct 29 Javascript
js判断一个对象是数组(函数)的方法实例
Dec 19 Javascript
解决Nuxt使用axios跨域问题
Jul 06 Javascript
js基于div丝滑实现贝塞尔曲线
Sep 23 Javascript
详解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批量修改文件名称的方法分析
2017/02/27 PHP
基于jQuery的输入框在光标位置插入内容, 并选中
2011/10/29 Javascript
jQuery ui插件的使用方法代码实例
2013/05/08 Javascript
js控制的遮罩层实例介绍
2013/05/29 Javascript
js 走马灯简单实例
2013/11/21 Javascript
JQuery拖动表头边框线调整表格列宽效果代码
2014/09/10 Javascript
jQuery实现的支持IE的html滑动条
2015/03/16 Javascript
js仿微博实现统计字符和本地存储功能
2015/12/22 Javascript
jquery中的常见问题及快速解决方法小结
2016/06/14 Javascript
Bootstrap中glyphicons-halflings-regular.woff字体报404错notfound的解决方法
2017/01/19 Javascript
javascript表单正则应用
2017/02/04 Javascript
js实现简单的手风琴效果
2017/02/27 Javascript
vue综合组件间的通信详解
2017/11/06 Javascript
JavaScript中Array方法你该知道的正确打开方法
2018/09/11 Javascript
TypeScript基础入门教程之三重斜线指令详解
2018/10/22 Javascript
Vue2.0实现简单分页及跳转效果
2019/07/29 Javascript
基于Echarts图表在div动态切换时不显示的解决方式
2020/07/20 Javascript
探究一道价值25k的蚂蚁金服异步串行面试题
2020/08/21 Javascript
Selenium执行JavaScript脚本的方法示例
2020/12/31 Javascript
Pandas实现数据类型转换的一些小技巧汇总
2018/05/07 Python
python3个性签名设计实现代码
2018/06/19 Python
Django2.1集成xadmin管理后台所遇到的错误集锦(填坑)
2018/12/20 Python
python3使用pandas获取股票数据的方法
2018/12/22 Python
Python 支付整合开发包的实现
2019/01/23 Python
Python Django 命名空间模式的实现
2019/08/09 Python
Python3读写Excel文件(使用xlrd,xlsxwriter,openpyxl3种方式读写实例与优劣)
2020/02/13 Python
pycharm2020.1.2永久破解激活教程,实测有效
2020/10/29 Python
Python字节单位转换(将字节转换为K M G T)
2021/03/02 Python
recorder.js 基于Html5录音功能的实现
2020/05/26 HTML / CSS
GAP美国官网:美国休闲时尚品牌
2016/08/26 全球购物
Bluebella美国官网:英国性感内衣品牌
2018/10/04 全球购物
英国在线发型和美容产品商店:Beauty Cutie
2019/04/27 全球购物
全球速卖通俄罗斯站:AliExpress俄罗斯
2019/06/17 全球购物
中秋节礼品促销方案
2014/02/02 职场文书
产品委托授权书范本
2014/09/16 职场文书
2014酒店客房部工作总结
2014/12/16 职场文书