使用 PHP 和 jQuery 创建无限滚动的简单教程

一则或许对你有用的小广告

欢迎加入小哈的星球 ,你将获得:专属的项目实战 / 1v1 提问 / Java 学习路线 / 学习打卡 / 每月赠书 / 社群讨论

  • 新项目:《从零手撸:仿小红书(微服务架构)》 正在持续爆肝中,基于 Spring Cloud Alibaba + Spring Boot 3.x + JDK 17...点击查看项目介绍 ;
  • 《从零手撸:前后端分离博客项目(全栈开发)》 2 期已完结,演示链接: http://116.62.199.48/ ;

截止目前, 星球 内专栏累计输出 63w+ 字,讲解图 2808+ 张,还在持续爆肝中.. 后续还会上新更多项目,目标是将 Java 领域典型的项目都整一波,如秒杀系统, 在线商城, IM 即时通讯,权限管理,Spring Cloud Alibaba 微服务等等,已有 2200+ 小伙伴加入学习 ,欢迎点击围观

尽管您( PHP 开发人员 )为确保网页的顺利加载进行了出色的编码,但在某些情况下,数据加载到网页上所花费的时间太长。正是在这里,PHP 和 jQuery 发挥了独特的作用。您可以利用它们在网页上显示大量数据,而不会影响页面加载速度。您需要做的就是使用 jQuery 简单地实现脚本。这样做会限制数据的初始加载,直到用户向下滚动并达到最终限制。在今天的教程中,我将与您分享为需要包含大量数据/信息的页面创建无限滚动的过程。

第 1 步:创建数据库表

作为第一步,我们需要有一个包含所有数据(要在网页上显示的数据)以及唯一 ID 的数据库表。为此,您可以使用自动增量功能(以及主键),如下所示:

第 2 步:使用 load_data.php


 CREATE TABLE messages(

mes_id INT PRIMARY KEY AUTO_INCREMENT,

msg TEXT);


Load_data.php 用于允许 jQuery 发送负责获取比前一个数据更旧的数据的请求。看看下面的加载数据脚本示例:


 CREATE TABLE messages(

mes_id INT PRIMARY KEY AUTO_INCREMENT,

msg TEXT);


当用户向下滚动网页时,$(window).scroll) 脚本会自动确定用户位于页面底部。此后,last_msg_function() 除了添加将在最后一个数据之后返回的 HTML 数据外,还将调用 load_data.php 文件。此外,在上面的代码片段中,您还可以查看 $(window).scrollTop() == $(document).height() - $(window).height()) 命令将执行以确定滚动的方向。一旦确定了滚动方向,语句中的表达式将检查滚动高度是否等于窗口高度。如果是,那么网页上只会加载更多数据。

第 3 步:使用 load_first.php

看看下面提到的 PHP 代码,它加载了从消息表(本文前面创建的那个)中获取的 25 行:


 CREATE TABLE messages(

mes_id INT PRIMARY KEY AUTO_INCREMENT,

msg TEXT);


第 4 步:使用 load_second.php

现在,load_second.php 代码用于加载 8 行,这些行小于从消息表中获取的 last_msg_id。看看下面这个步骤的 PHP 代码:


 CREATE TABLE messages(

mes_id INT PRIMARY KEY AUTO_INCREMENT,

msg TEXT);


第 5 步:添加 CSS 元素

添加特定的 CSS 元素将以改进的格式呈现数据。在本教程中,我使用了将样式元素呈现到帖子编号和消息框的 CSS 元素。看看下面的示例 CSS 文件:


 CREATE TABLE messages(

mes_id INT PRIMARY KEY AUTO_INCREMENT,

msg TEXT);


是什么让 PHP 和 jQuery 最适合在单个网页上加载大量数据?

使用 PHP 和 jQuery 加载数据的最大优势之一是它允许动态加载数据,而用户可以选择向下滚动页面。有趣的是,一些最流行的网站(例如 Google+、Facebook 和 Twitter)已经采用这种技术在网页上加载数据。

相关文章