2013-02-21 72 views
0

所以我想实现的流行inifnite滚动插件,以取代目前的自制无限滚动脚本:使用jQuery无限滚动插件没有分页标记?

http://www.infinite-scroll.com/ & https://github.com/paulirish/infinite-scroll

反正好像这个插件,需要有对html格式的分页这一页。即由于以下选项:

nextSelector: "div.navigation a:first", 
navSelector: "div.navigation", 

我没有页面上的分页标记。我不关心我的网站是否与抓取工具/ js禁用用户不兼容。

那么有没有一种方法来实现这个插件没有物理html分页?

在我的自定义脚本,我做这样的事情:

var $page = 1; 

// Load content for $page 

$page++; 

这样的事,也就是我可以在开始页面传递一个整数?

回答

1

您可以使用jQuery/JavaScript的轻松创建它。

这是一个有点硬,现在写一个通用的任何东西,但主要的原理是这样的:

如果要加载最新的内容(最新第一,旧的滚动):

  1. 负载第一组元素(天气是博客帖子,图片,报价),比屏幕高度要多一点。将最后一个项目的ID保存在一个变量中。

  2. 使用setInterval检测用户是否滚动页面,然后加载ID低于您保存的上一个ID的数据。然后继续保存最后的ID并加载新的内容。

祝你好运!

事情是这样的:

function loadnewdata() 
{ 
    // do ajax stuff, update data. 
} 
setInterval(
    function(){ 
    if(($(document).height() - $(window).height() - $(document).scrollTop()) < 500){ 
    loadnewdata(); 
    } 
    }, 
    500 
); 

你会写loadNewData()函数为自己,当然。取决于你的数据。 如果用户已滚动页面,则会每载入500个新数据。

+0

我知道我可以自己做,我已经做到了。但我想用该插件替换它,因为它有很多其他功能以及jQuery的石工集成,否则就很棘手。 – TK123 2013-02-22 03:02:26

+0

然后我不知道我能帮忙,甚至没有能够得到该脚本工作。 – 2013-02-22 11:24:14