在jquery mobile中滚动结束时加载数据

时间:2012-06-19 15:14:05

标签: jquery-mobile yii

我使用dataprovider对象一次显示包含25条记录的列表而不是分页,我想使用以下代码在滚动结束时显示下一页。 但有没有更好的方法而不是window.location.href 如果没有,是否有任何选项显示加载消息,直到页面加载。

$(document).ready(function()
{
    $('#content').bind('scroll', function () 
    {   
        totalDivHeight = eval($('#content')[0].scrollHeight) - eval($('#content').height());
        scrollPosition =eval($('#content').scrollTop())+25;// + eval($('#content').height());

        if (scrollPosition >= totalDivHeight)
        {   
            nextPageID = eval("<?= $nextPageID; ?>");
            prevPageID = eval("<?= $prevPageID; ?>");
            totalPages = eval("<?= $totalPages; ?>");
            if (nextPageID < totalPages)
                window.location.href='<?php echo $url;?>'+'&Store_page='+nextPageID;

        }
    });

});

编辑:我尝试了ajax函数而不是window.location.href,但我不知道如何将pagenumber变量发送给提供者?

1 个答案:

答案 0 :(得分:2)

您可能希望延迟加载内容并附加到表的末尾,然后通过ajax执行此操作。

你不应该重新发明其他人已经完成此任务的轮子,其中一个实现就在这里:

http://dcarrith.github.com/jquery.mobile.lazyloader/