php - 仅在有更多数据要加载时显示按钮

标签 php jquery

我需要在 jQuery 和 PHP 中创建一个脚本,只有当页面上没有更多数据要加载时,它才会显示 load more news 按钮。最简单的解决方案是测试表是否已更新,但我不确定是否可以完成。另一种方法是测试表格中是否有当前页面上不存在的内容,同样不确定如何执行此操作。

这就是我目前所拥有的;

//check for more data every 5 seconds
window.setInterval(function() {
    $.get("phpscripts/getFeed.php", function(result) {
        //fade in #refreshFeed
        $("#refreshFeed").fadeIn(300);
    }); 
}, 5000);

//Get feed on click
$("#refreshFeed").live('click', function() {
    $.get("phpscripts/getFeed.php", function(result) {
        $("#newsFeed").html(result);
    }); 
});

这只会让按钮在 5 秒后显示,不会测试是否有更多数据要加载。第二个函数中的 php 脚本只是从表中加载数据。

我希望目前有一种方法可以在函数中使用相同的脚本并在 jQuery 中完成所有操作。

举个例子,如果有人曾经使用过 Twitter 或适用于 iphone 的新 Facebook 应用程序,那么这个概念是完全相同的。当数据库中有新信息时,会显示一个按钮,单击该按钮会将数据加载到提要顶部。我确信 facebook 和 twitter 会使用 SSE,但我不需要这样做。我需要做的就是每 5 秒检查一次新数据。

最佳答案

我刚刚在网站上完成了两个查看更多链接功能,我可以从性能测试中告诉你,我们所做的最好的选择是加载所有数据并将其添加到页面加载到元素中的 DOM 显示:无。使用 jQuery 选择器获取所有这些元素并将集合存储在变量中。然后,您可以为这些元素编写查看更多/更少的脚本。

如果您在脚本方面需要任何帮助,请告诉我,我很乐意提供帮助。祝你好运! :)


编辑:

我想我可能漏掉了您的部分问题(如何知道何时隐藏或显示按钮)。您将希望保留一个变量,用于存储您吃过多少显示的项目和切片以显示更多/更少。或者(但开销更大)您可以使用类作为标志来确定显示和不显示哪些元素。

关于php - 仅在有更多数据要加载时显示按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12228957/

相关文章:

javascript - 获取select的值

php - 如何制作 .ics 日历文件以便可以订阅? (不仅仅是添加到日历)

php - iPhone 中缺少 HTTP_RANGE

javascript - bootstrap-slider 中的标签真的需要 ID 吗?

javascript - 安全的 ajax 脚本(javascript 请求的 PHP 脚本)

php - 即使两个字符串有 1 个字符不同,我如何匹配它们?

jquery - Rails 中的就地编辑 X-editable 没有路由匹配 [POST]

javascript - Jquery Ajax 服务器轮询;根据早期的 ajax 响应轮询服务器

javascript - 通过 jquery ajax 加载图像的事件处理程序

javascript - 使用 "upload"按钮将多个图像上传到页面时出现问题...