使用scrollpagination实现页面底端自动加载无需翻页功能

当阅读到页面最底端的时候,会自动显示一个“加载中”的功能,并自动从服务器端无刷新的将内容下载到本地浏览器显示。 
这样的自动加载功能是如何实现的?jQuery的插件 ScrollPagination 可以帮助实现这个功能。

这里是ScrollPagination 功能的原型化代码,

$(function() {
    $(‘#content‘).scrollPagination({
        ‘contentPage‘: ‘democontent.html‘, // the page where you are searching for results
        ‘contentData‘: {}, // you can pass the children().size() to know where is the pagination
        // who gonna scroll? in this example, the full window
        ‘scrollTarget‘: $(window),
        // how many pixels before reaching end of the page would loading start?
        ‘heightOffset‘: 10,positives numbers only please
        ‘beforeLoad‘: function() { // before load, some function, maybe display a preloader div
            $(‘.loading‘).fadeIn();
        },
        // after loading, some function to animate results and hide a preloader div
        ‘afterLoad‘: function(elementsLoaded){
            $(‘.loading‘).fadeOut();
            var i = 0;
            $(elementsLoaded).fadeInWithDelay();
            // if more than 100 results loaded stop pagination (only for test)
            if ($(‘#content‘).children().size() > 100){
                $(‘#content‘).stopScrollPagination();
            }
        }
    });  

    // code for fade in element by element with delay
    $.fn.fadeInWithDelay = function(){
        var delay = 0;
        return this.each(function(){
            $(this).delay(delay).animate({opacity:1}, 200);
            delay += 100;
        });
    };
});  

这里可以看到jQuery Scroll Pagination的实现效果, 
http://andersonferminiano.com/jqueryscrollpagination/

只要将界面不断往下滚动就可以看到。

var page = 1;
$(function() {
    $(‘#getAjax‘).scrollPagination({
        ‘contentPage‘: ‘__ACTION__‘,
        // the url you are fetching the results
        ‘contentData‘: { id : {$Think.request.id}, pic : {$Think.request.pic}, ps : {$ps}, pn : function(){return page} },
        // these are the variables you can pass to the request, for example: children().size() to know which page you are
        ‘scrollTarget‘: $(window),
        // who gonna scroll? in this example, the full window
        ‘heightOffset‘: 10,
        // it gonna request when scroll is 10 pixels before the page ends
        ‘beforeLoad‘: function() {
            page = page + 1;
        },
        ‘afterLoad‘: function(elementsLoaded) { // after loading content, you can use this function to animate your new elements
            $(elementsLoaded).fadeInWithDelay();
        }
    });  

    // code for fade in element by element
    $.fn.fadeInWithDelay = function() {
        var delay = 0;
        return this.each(function() {
            $(this).delay(delay).animate({
                opacity: 1
            },
            200);
            delay += 100;
        });
    };
});  
时间: 2024-12-06 10:06:52

使用scrollpagination实现页面底端自动加载无需翻页功能的相关文章

页面滚动到底部自动加载下一页功能的实现

页面滚动到底部自动加载下一页功能的实现,效果见本博首页 1.endlesspage.js文件内容 var gPageSize = 10; var i = 1; //设置当前页数,全局变量 var finished = false; var dataUrl = ''; $(function () { //根据页数读取数据 function getData(pagenumber) { //console.log(i); $.get(dataUrl, { pagesize: gPageSize, p:

页面滑动底部自动加载下一页信息

最近移动端的项目做的比较多,记录下一种非常使用的移动端分页方式. 一  前端页面javascript代码 设置一个全局变量. var pageIndex = 1; 然后添加页面滚动事件,如果滑动到页面底部,自动执行GetList()方法,从数据库获取第二页的数据,然后转化成json返回给前台页面. $(document).ready(function () { $(window).scroll(function () { var nowScrolledHeight = document.docu

手机H5页面,滑动到底部自动加载下一页内容

做公众号项目中有如下场景,一个H5页面有列表数据,不考虑一次加载所有数据,故需要分页操作,解决方案为滑动到底部自动加载下一页内容.直接在H5的js当中实现. 主要使用jquery的scroll()方法: 当用户滚动指定的元素时,会发生 scroll 事件. scroll 事件适用于所有可滚动的元素和 window 对象(浏览器窗口). scroll() 方法触发 scroll 事件,或规定当发生 scroll 事件时运行的函数. 代码如下: $(window).scroll(function()

笔记-移动端滑动到底部自动加载下一页内容

公司微信公众号的网页由ThinkPHP框架的模板生成,由一个需求是滑动到底部时自动加载下一页内容. 1.网页结构 网页分为两个部分,顶部固定导航栏,下部有一个page容器,内部滚动显示. 2.加载下一页的流程 当滑动到底部时,发送ajax请求下一页内容,内容返回后,将内容拼接成HTML结构后插入原有的page下. 页面是后端已经分好的,所以ajax请求的数据中包含一个currentpage变量,这个变量每次请求时自增1,表示请求下一页. 3.如何实现 想着原理比较简单,所以自己实现了一下,实现思

页面滚动动态加载数据,页面下拉自动加载内容 jquery

<!DOCTYPE=html> <html> <head> < script src="js/jquery.js" type="text/javascript"></ script> < script type="text/javascript"> $(document).ready(function(){ var range = 50; //距下边界长度/单位px var

★android开发--ListView+Json+异步网络图片加载+滚动翻页的例子(图片能缓存,图片不错乱)

例子中用于解析Json的Gson请自己Google下载 主Activity: package COM.Example.Main; import java.util.HashMap; import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.Map; import COM.Example.Main.R; import COM.Example.Main.stringG

AngularJS:实现页面滚动到底自动加载数据的功能

要实现这个功能,可以通过https://github.com/sroze/ngInfiniteScroll这个第三方控件来实现.步骤如下: 1. 下载ng-infinite-scroll.js程序http://sroze.github.io/ngInfiniteScroll/ 目前版本是1.0.0 2. 如果你是用的jQuery2.0以上版本,还需要修改ng-infinite-scroll.js程序,将所有的将所有的$window.xxx改为$(window).xxx, elem.xxx改为$(

Python网络爬虫_爬取Ajax动态加载和翻页时url不变的网页

1 . 什么是 AJAX ? AJAX = 异步 JavaScript 和 XML. AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. 传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面. 几个常见的用到ajax的场景. 比如你在逛知乎,你没有刷新过网页,但是你却能看到你关注的用户或者话题有了新动态的消息提示. 还比如,我们在看视频时,可以看到下面

[JS前端开发] js/jquery控制页面动态加载数据 滑动滚动条自动加载事件

页面滚动动态加载数据,页面下拉自动加载内容 相信很多人都见过瀑布流图片布局,那些图片是动态加载出来的,效果很好,对服务器的压力相对来说也小了很多 有手机的相信都见过这样的效果:进入qq空间,向下拉动空间,到底部时,会动态加载剩余的说说或者是日志 今天我们就来看看他们的实现思路和js控制动态加载的代码 下面的代码主要是控制滚动条下拉时的加载事件的 在下面代码说明出,写上你的操作即可,无论是加载图片还是加载记录数据  都可以 别忘了引用jquery类库 [JavaScript] 纯文本查看 复制代码