背景:

公司项目要求获取用户关联的好友列表,要求分页查询,十条数据一页,滚动页面是点击加载更多,显示下一页列表。

示例图:

实现:

本项目采用的前端模板是freemaker,主要前端页面代码(没有附css文件)如下:

<div class="middle-menu" style="margin: 0.3rem;">
<div id="tab1" class="middle-menu1 " onclick="changeTab(1)">已添加好友</div>
<div id="tab2" class="middle-menu2 " onclick="changeTab(2)">好友标签</div>
</div>
<div class="card-list-friend" id="noneToShow_1">
<div class="feedback-box p-t-67">
<img src="${mainDomain}/static/images/empty2.png" class="feedback-img" style="width: 3rem;" />
<p class="feedback-text">暂无数据</p>
</div>
</div>
<div class="card-list-friend" id="allCustShowDiv">
</div>
<div class="more-center-btn" id="allCustLoadMoreDiv" onclick="loadAllCustList();" style="display: none;">
<i class="iconfont"></i><span>点击加载更多</span>
</div>
<div class="more-center-btn" id="allCustLoadRemark" style="display: none;">
<i class="iconfont"></i><span>已显示全部好友</span>
</div>
</div>

显示效果如下:

js代码:

	// 全部好友页数
var commonPage1 = 1;
// 每页展示10个
var pageSize = 10;
//默认选中的标签页
var itemIndex = 1; //初始化
$(function () {
//进入页面就开始查询列表
loadAllCustList();
}) //分页获取好友页表
function loadAllCustList(){
$.ajax({
type: 'POST',
url: '${mainDomain}/friend/myFriendList?page=' + commonPage1 + '&size=' + pageSize,
dataType: 'json',
success: function (res) {
//获取数据
if (res.success) {
var resInfo = res.data.list;
var count = res.data.count; var showHtml = ''; if (count != 0 && resInfo.length != 0) {
for (let item of resInfo) {
showHtml += '' +
'<div class="card">' +
'<img src="${mainDomain}/static/images/person5.png" class="friend-avatar"/>' +
'<div>' +
'<div class="friend-name">微信昵称:' + item.followUserRemark +
'</div>' +
'<div class="friend-telephone">手机号:' + item.followUserRemarkMobiles +
'</div>' +
'</div>' +
'</div>';
} //隐藏默认的暂无数据页面
$("#noneToShow_1").hide();
//将查询的列表添加到页面上
$("#allCustShowDiv").append(showHtml);
}
//显示加载更多标签
$("#allCustLoadMoreDiv").show(); //如果已经没有多余的,就将加载更多隐藏
if (resInfo.length < pageSize || pageSize * commonPage1 >= count) {
$("#allCustLoadMoreDiv").hide();
if (resInfo.length != 0) {
$("#allCustLoadRemark").show();
}
} //页码+1
commonPage1++; } else {
console.log("加载数据失败,请稍后再试");
}
},
error: function (xhr, type) {
console.log("加载数据异常,请稍后再试!");
}
});
}

后台代码:接口需要自己写,略

最终效果图:

springboot滚动分页展示列表(类似layui瀑布流效果)的更多相关文章

  1. 使用JS实现图片展示瀑布流效果

    不知大家有没有发现,一般的图片展示网站都会使用瀑布流效果,所谓的瀑布流 就是网站内的图片不会一下子全缓存出来,而是等你滚动到一定的距离的时候, 下面的图片才会继续缓存,并且图片也是随机出现的,只是宽度 ...

  2. RecyclerView实现瀑布流效果(图文详解+源码奉送)

    最近有时间研究了一下RecyclerView,果然功能强大啊,能实现的效果还是比较多的,那么今天给大家介绍一个用RecyclerView实现的瀑布流效果. 先来一张效果图: 看看怎么实现吧: 整体工程 ...

  3. 手把手教你js原生瀑布流效果实现

    手把手教你js原生瀑布流效果实现 什么是瀑布流效果 首先,让我们先看一段动画: 在动画中,我们不难发现,这个动画有以下特点: 1.所有的图片的宽度都是一样的 2.所有的图片的高度是不一样的 3.图片一 ...

  4. RecyclerView实现瀑布流效果(二)

    在上篇中我们知道RecyclerView中默认给我们提供了三种布局管理器,分别是LinearLayoutManager.GridLayoutManager.StaggeredGridLayoutMan ...

  5. wpf 客户端【JDAgent桌面助手】开发详解(三) 瀑布流效果实现与UI虚拟化优化大数据显示

    目录区域: 业余开发的wpf 客户端终于完工了..晒晒截图 wpf 客户端[JDAgent桌面助手]开发详解-开篇 wpf 客户端[JDAgent桌面助手]详解(一)主窗口 圆形菜单... wpf 客 ...

  6. RecylerView完美实现瀑布流效果

    RecylerView包含三种布局管理器,分别是LinearLayoutManager,GridLayoutManager,StaggeredGridLayoutManager,对应实现单行列表,多行 ...

  7. WPF下制作的简单瀑布流效果

    最近又在搞点小东西,美化界面的时候发现瀑布流效果比较不错.顺便就搬到了WPF,下面是界面 我对WEB前端不熟,JS和CSS怎么实现的,我没去研究过,这里就说下WPF的实现思路,相当简单. 1.最重要的 ...

  8. 用jQuery实现瀑布流效果学习笔记

    jQuery一直没系统的学,只知道是js库,封装了好多js函数,方便了开发.以前做过一个原生的图片网站瀑布流效果,超级麻烦,这次用了jQuery方法,瞬间代码浓缩了,只有56行js代码.神奇的让我来把 ...

  9. Android UI 之WaterFall瀑布流效果

        所谓瀑布流效果,简单说就是宽度相同但是高度不同的一大堆图片,分成几列,然后像水流一样向下排列,并随着用户的上下滑动自动加载更多的图片内容.     语言描述比较抽象,具体效果看下面的截图:   ...

随机推荐

  1. Linux虚拟机启动报错operating system not found解决步骤

    此报错为硬盘上的启动代码丢失 实验准备步骤 1) 准备: dd if=/dev/zero of=/dev/nvme0n1 bs=446 count=1 2) 系统启动报错截图 修复步骤如下 第一步:选 ...

  2. Linux_etc-shadow文件总结

    shadow 文件权限 $ll shadow ---------- 1 root root 1131 Aug 6 12:04 shadow 可以看出只有root可以操作它,普通用户执行passwd,内 ...

  3. 可靠的自托管「GitHub 热点速览 v.22.37」

    自托管(Self-Hosted) 是很多开源项目主打的亮点:数据在手,安全我有.本周 GitHub 热点榜单上有多款自托管的项目,当中自然不能少了之前 HG 小伙伴 @makes world simp ...

  4. Windows服务器无法配置IP

    前天在给一台服务器配置IP地址的时候发现一个奇怪的问题.IP地址配置之后不生效,还是使用的169.254这个微软保留自动分配地址.由于这个是一台虚拟机,尝试了删除添加网卡也没有用.配置IP不成功的时候 ...

  5. Docker安装MySQL并使用Navicat连接

    MySQL简单介绍: MySQL 是一个开放源码的关系数据库管理系统,开发者为瑞典 MySQL AB 公司.目前 MySQL 被广泛地应用在 Internet 上的大中小型网站中.由于其体积小.速度快 ...

  6. 【疑难杂症】关于Transformer到底是什么

    在学习transform的时候,很多视频上来就是一张图开始解释图里面残差网络,self-attention等等巴拉巴拉的意思,然后组装,看也看完了,但是还是不明白transformer和selfatt ...

  7. 使用mysql5.7版本的mysqldump备份mysql8.0版本的数据库报错解决办法

    使用mysql5.7版本的mysqldump命令执行备份mysql8.0版本的数据库时会报错: mysqldump: Couldn't execute 'SET SQL_QUOTE_SHOW_CREA ...

  8. Alertmanager 概念与配置深入介绍

    文章转载自:https://www.cnblogs.com/gered/p/13496950.html 警报一直是整个监控系统中的重要组成部分,Prometheus监控系统中,采集与警报是分离的. 报 ...

  9. PAT (Basic Level) Practice 1009 说反话 分数 20

    给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出. 输入格式: 测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串.字符串由若干单词和若干空格组成,其中单词是由英文字母(大小 ...

  10. PAT (Basic Level) Practice 1006 换个格式输出整数 分数 15

    让我们用字母 B 来表示"百".字母 S 表示"十",用 12...n 来表示不为零的个位数字 n(<10),换个格式来输出任一个不超过 3 位的正整数. ...