php - 如何使用 jQuery.ajax 和 jScroll 与 PHP 制作无限滚动页面

标签 php jquery mysql ajax

我正在使用 PHP(后端服务页面)获取以 json 格式存储在 MySQL 中的推文结果。 现在数据变大了,我只想在页面中加载 20 条推文,当用户滚动时,我想获得更多结果。

我是 jQuery 的新手,因为 jScroll 几乎没有文档,如果有的话,我无法让这个东西工作。

我搜索了类似的内容,但找不到任何详细的解决方案。

我的 PHP 服务只获取少量记录。我知道如何设置偏移量,但如何发送它并同时在页面上实现 jScroll?!

有人可以帮忙吗? 非常感谢......

最佳答案

如果DOM发生变化,你必须绑定(bind)jscroll, 所以你可以创建一个函数,在文档准备好后和每个 ajax 请求后调用。

记住 Jscroll 需要下一个选择器 url。因此,您必须将带有下一个 url 的 anchor 放置到您的页面。

HTML 部分应该是这样的,

<div class="main-selector">
 <div><!--Your data here --> </div>
 <div><!--Your data here -->  </div>
 <div><!--Your data here  --> </div>
 <div><!--Your data here -->  </div>
 <div><!--Your data here  --> </div>
 <div class='pager'>
    <a href="URL TO NEXT PAGE" class='next-selector'></a>
 </div>
</div>

现在你可以像下面这样为“main-selector”类调用Jscroll

 function setScrolling(selector) {
    $(window).unbind("scroll");


    scroller= $(selector).jscroll({
        loadingHtml: '<img src="/images/loader.gif" alt="Loading" /> Loading...',
        padding: 20,
        nextSelector:' next-selector:last ' // This part is tricky
    });

 }

现在调用 setScrolling('.main-selector') ,在每个 ajax 请求开始和之后(仅在需要时)

并记住以始终是下一个 url 的方式设置 nextSelector

关于php - 如何使用 jQuery.ajax 和 jScroll 与 PHP 制作无限滚动页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25498036/

相关文章:

php - 按时间戳排序已损坏?

javascript - 阻止 javascript 调用直到模式退出

MySQL:将另一个表中的2行合并为一个结果行

mysql - 行值在 MySQL 中应该是一个一个的

php - 如何在使用 SVN 时密码保护开发人员但不能使用?

PHP 正则表达式搜索包含,然后在找到它们的地方写入包含

php - 这是 flash、php 和 mysql 中的错误登录算法吗?

javascript - jquery ajax 调用没有按预期返回

javascript - 如何让 jQuery 在上传时限制文件类型?

mysql - 在mysql中使用主键作为大表的外键