一、CSS样式

         body { font:12px/1.0em Microsoft Yahei; line-height:1.6em; background:#fff; line-height:1.2em; padding:0 10px; }
html,body,div { margin:;} .container { height:900px;}
.load-btn { display:block; text-align:center; padding:5px 10px; border:1px #eee solid; background:#f5f5f5;}

二、HTML代码

 <div class="container"></div>
<a href="javascript:void(0)" class="load-btn load-more">查看更多</a>
<input type="hidden" name="PageIndex" value="1" />

三、Javascript代码

 <script type="text/javascript">
$(function () {
var $page = $("input[name='PageIndex']"); //页索引 //初始化
Data.init(10); //滚动加载
$(window).scroll(function () {
Data.scroll($page.val(), 10);
}); //手动加载
$(".load-more").bind("click", function () {
Data.load($page.val(), 10);
});
}) var Data = {
init: function (rows) {//初始化,载入第一页数据
Data.load(1, rows);
},
setPage: function () {//数据载入成功,设置下一页索引
var $page = $("input[name='PageIndex']");
var index = parseInt($page.val()) + 1;
$page.val(index);
},
scroll: function (page, rows) {//滚动到底部加载数据
var top = $(window).scrollTop();
var win = $(window).height();
var doc = $(document).height();
if ((top + win) >= doc) {
Data.load(page, rows);
}
},
load: function (page, rows) {//载入数据方法
var $msg = $('.load-btn');
$msg.removeClass('load-more').text('正在载入数据...');
$.post("ajax.php?page=" + page + "&rows=" + rows + "&t=" + (new Date().getTime()), function (data) {
data = $.parseJSON(data);
if (data != null || data.length > 0) {
Data.append(data);
Data.setPage();
$msg.addClass('load-more').text('查看更多');
return true;
}
$msg.removeClass('load-more').text('已加载全部数据!');
return false;
});
$msg.removeClass('load-more').text('数据加载失败!');
window.setTimeout(function () {
$msg.addClass('load-more').text('查看更多');
}, 2000);
return false;
},
append: function (json) {//构造html,并填充
var $container = $('.container');
$.each(json, function (i) {
html += "<div class=\"item\"><a href=\"item.php?id=" + json[i].id + "\" title=" + json[i].title + ">" + json[i].title + "</a></div>";
});
$container.append(html);
}
}
</script>

下载地址:http://files.cnblogs.com/wyguo/jquery_ajax_scroll_to_load_data.zip

jQuery+Ajax滚屏异步加载数据实现(附源码)的更多相关文章

  1. jquery easyui easyui-treegrid 使用异步加载数据

    jquery easyui easyui-treegrid 使用异步加载数据 jquery easyui easyui-treegrid 异步请求 >>>>>>&g ...

  2. Android必学-异步加载+Android自定义View源码【申明:来源于网络】

    Android必学-异步加载+Android自定义View源码[申明:来源于网络] 异步加载地址:http://download.csdn.net/detail/u013792369/8867609 ...

  3. ArcGIS紧凑型切片读取与应用2-webgis动态加载紧凑型切片(附源码)

    1.前言 上篇主要讲了一下紧凑型切片的的解析逻辑,这一篇主要讲一下使用openlayers动态加载紧凑型切片的web地图服务. 2.代码实现 上篇已经可以通过切片的x.y.z得对应的切片图片,现在使用 ...

  4. 微信小程序中如何实现分页下拉加载?(附源码)

    转眼间坚持写教你微信小程序系列已经有十节系列课程了,每天的工作压力繁重,小女子也不知道自己还能坚持这样的系列教程多久.只希望每篇教程真的对大家有帮助.这节课我们要介绍的就是如何实现分页的下拉加载,我们 ...

  5. arcgis api 4.x for js 结合 react 入门开发系列react全家桶实现加载天地图(附源码下载)

    基于两篇react+arcgis的文章介绍,相信大家也能体会两者的开发区别了.在“初探篇”中作者也讲述了自己的选择,故废话不多说,本篇带大家体验在@arcgis/webpack-plugin环境下,使 ...

  6. 【Android初级】如何实现一个“模拟后台下载”的加载效果(附源码)

    在Android里面,后台的任务下载功能是非常常用的,比如在APP Store里面下载应用,下载应用时,需要跟用户进行交互,告诉用户当前正在下载以及下载完成等. 今天我将通过使用Android的原生控 ...

  7. 淘宝购物车页面 智能搜索框Ajax异步加载数据

    如果有朋友对本篇文章的一些知识点不了解的话,可以先阅读此篇文章.在这篇文章中,我大概介绍了一下构建淘宝购物车页面需要的基础知识. 这篇文章主要探讨的是智能搜索框Ajax异步加载数据.jQuery的社区 ...

  8. Jquery zTree结合Asp.net实现异步加载数据

    zTree结合Asp.net实现异步加载数据 实现简单操作 zTree 下载 api 访问 :http://www.ztree.me/v3/main.php 例子中用到json数据转化 newtons ...

  9. 向上滚动或者向下滚动分页异步加载数据(Ajax + lazyload)[上拉加载组件]

    /**** desc : 分页异步获取列表数据,页面向上滚动时候加载前面页码,向下滚动时加载后面页码 ajaxdata_url ajax异步的URL 如data.php page_val_name a ...

随机推荐

  1. WORD2003电子签名插件(支持手写、签章)

    1.引言 WORD电子签名插件,支持手写.本地电子图章.以及网络图章功能.软件使用VC6,以ATL方式编写,软件小巧精致. 这是我学习ATL的成果,学习过程及程序的编写,前前后后共用了一个多月的时间, ...

  2. 隐知识:reloadData 方法之后,view并不会立即更新其contentSize

    在使用UITableView .UICollectionView ,调用reloadData方法之后,并不立即更新其contentSize.原因如下:http://jacksonriver.com/n ...

  3. PoolMon 使用

    PoolMon 显示   PoolMon 在命令窗口中显示有关池内存分配的数据列.使用箭头键.PAGE UP 和 PAGE DOWN 键在数据间滚动. 注意   若要查看全部 PoolMon 显示,则 ...

  4. VMware安装RedHat Linux虚拟机图文详解

    创建Red Hat Linux虚拟机 1.打开VMware,开始创建虚拟机 点击菜单[文件]->[新建虚拟机]. 2.默认典型,单击[下一步] 3.选择安装来源 在这里,我们选择安装来源为[安装 ...

  5. Linux之crontab

    一  cron crond位于/etc/rc.d/init.d/crond 或 /etc/init.d 或 /etc/rc.d /rc5.d/S90crond,最总引用/var/lock/subsys ...

  6. wordpress自动截取文章摘要代码

    想要实现 wordpress 首页显示摘要有几种方法: 第一种,可以在写文章的时侯在需要分割的地方加入<!–more–>标签,但在输出首页摘要的同时,也会使feed只显示摘要,不方便读者阅 ...

  7. 关于 Redis 访问安全性的问题

    升级版本 3.0.2 版本升级到 redis-3.2.0 版本远程无法访问,比较配置文件有些变化,比如默认只能本地的机器才能访问 3.0.2 版本 # By default Redis listens ...

  8. 同时大量连接导致的DDOS攻击,导致收发器宕机,用户大面积超时掉线

    前段时间一个客户改成电信网通自动路由后(当然和这个没有关系,但是客户一般没有分析能力,会多想),用户经常大面积掉线,用户才180多个,在线最多也才120多,十分苦恼,原先帮其维护的技术人员,只是远程诊 ...

  9. android Camera 结构

    Java层 :Frameworks\base\core\java\android\hardware\Camera.java JNI: Frameworks\base\core\jni\android_ ...

  10. 所有文章都迁移到我自己的博客了:http://blog.neazor.com

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...