利用layui的flow实现信息流-滚动加载

layui flow流加载,(Bootstrap+jquery+layui) 最近在研究页面展示方式,以往千篇一律的表格展示,有些单调,偶尔机会了解到Layui flow,看看官方文档用着还是比较简单的,一下是范例,仅供参考: 1.引入样式文件: <link href="../css/lib/bootstrap/bootstrap.css?v=3.3.7" rel="stylesheet"> <link href="../css/lib/font-a... 阅读详情

环境:tp3.2+layui
html,设置一个包裹层

<div id="pyq-content" class="pyq-content"></div>

js,需要注意 scrollElem 这个参数需要填写!!

layui.use('flow', function () {
				var $ = layui.jquery; //不用额外加载jQuery,flow模块本身是有依赖jQuery的,直接用即可。
				var flow = layui.flow;
				flow.load({
					elem: '#pyq-content' //指定列表容器
					,
					scrollElem: '#pyq-content',
					isAuto: true,
					done: function (page, next) { //到达临界点(默认滚动触发),触发下一页
						var lis = [];

						var data = { page: page };
						var url = "{:U('pyq/pyqpage')}";
						$.post(url, data, function (res) {
							//res字符串转为json
							res = $.parseJSON(res);

							//假设你的列表返回在data集合中
							layui.each(res.data, function (index, item) {
								//先判断item.pyq_duotu 数组是否存在,存在的话,输出成html保存到js中,然后放到下面push中。
								var duotuarr = item.pyq_duotu;   //多图数组
								var arrnum = item.pyq_duotu.length;	 //多图数组长度
								var temp = '';	//如果有数组,将数组拼装成html放到temp中

								if (arrnum > 0) {
									//大于0,说明这一条有图片
									for (var i = 0; i < arrnum; i++) {
										temp = temp + '<li><figure style="background-image:url(' + duotuarr[i] + ')" data-src="' + duotuarr[i] + '" class="figure-list-img"><a href="javascript:;"></a></figure></li>';

									}
									temp = '<ul class="e03" thumblist="list' + item.pyq_id + '">' + temp + '</ul>';
								}

								// lis.push('<li>' + item.pyq_content + '</li>');
								lis.push('<div class="m03pyq clear"><div class="d00"><img src="' + item.mb_img + '" alt=""></div><div class="d01"><p>' + item.mb_name + '</p><p class="e01">' + item.pyq_content + '</p>' + temp + '<p class="e02">' + item.pyq_time + '</p></div></div>');
							});





							//切换图状态禁止页面缩放	
							document.addEventListener('touchstart', function (event) {
								if (event.touches.length > 1 && swiperStatus) {
									event.preventDefault();
								}
							})
							var lastTouchEnd = 0;
							document.addEventListener('touchend', function (event) {
								var now = (new Date()).getTime();
								if (now - lastTouchEnd <= 300) {
									event.preventDefault();
								}
								lastTouchEnd = now;
							}, false)

							document.addEventListener('touchmove', function (e) {
								if (swiperStatus) {
									e.preventDefault();
								}
							})

							//执行下一页渲染,第二参数为:满足“加载更多”的条件,即后面仍有分页
							//pages为Ajax返回的总页数,只有当前页小于总页数的情况下,才会继续出现加载更多
							next(lis.join(''), page < res.pages);
						});

					}
				});
			});

php

public function pyqpage(){
    $num = I('post.page');
    if (!empty($num)) {
        $pyq     = M('Pyq');
        $offset = 5*($num-1); //每页5个,偏移量
        $pyqinfo = $pyq->join('LEFT JOIN zq_member on zq_pyq.pyq_member = zq_member.mb_id')->limit($offset, 5)->where('pyq_state=1')->order('zq_pyq.pyq_time desc')->select();
        //需要将每个里面的图片,转换为数组,再赋值给前端
        // dump($pyqinfo);
        foreach ($pyqinfo as $key => &$value) {
            $array_duotu        = explode(',', $value['pyq_duotu']);
            $array_duotu        = array_filter($array_duotu);
            $value['pyq_duotu'] = $array_duotu;

            //格式化时间戳,传给前端
            $value['pyq_time'] = date("m-d H:i:s", $value['pyq_time']);
        }

        //符合条件的数量 
        $count = count($pyq->where('pyq_state=1')->select());
        //每页显示多少,例如1页显示5条
        $ci = ceil($count / 5);

        $res = array('data' => $pyqinfo, 'pages' => $ci);
        echo json_encode($res);
    }
}

通过以上步骤,发现需要点击一下 按钮才可以 继续加载,这里有一点需要注意,就是css, 包裹层需要设置一个高度 ,即可。

        <style>
        .pyq-content {
            position: relative;
            overflow: auto;
            clear: both;
            height: 600px;
        }
        </style>
滚动轮播,文字轮播 文字轮播,主要是横竖上下轮播,jquery手写滚动数据。自动添加尾部,再从头滚动。 立即下载

相关推荐

遥感图像处理实战:DOTA数据集旋转框转YOLO格式全流程解析(附代码)

本文详细解析了将DOTA遥感数据集的旋转框标注转换为YOLO格式的全流程。针对遥感图像中物体朝向任意性的特点,文章重点阐述了将旋转框转换为外接水平框的数学原理与代码实现,并提供了批量转换脚本和可视化验证方法,帮助开发者高效处理数据,为基于YOLO的遥感目标检测项目奠定基础。

weixin_29082143的博客 397

layui.flow(layui的流加载),图片懒加载,炒鸡好用哦~

前言 读完本文您将了解到:layui的滚动流加载,手动流加载,以及图片的懒加载。 滚动加载:拖动右边的滚动条,即可获取新的数据 手动加载:点击【加载更多】,即可获取新的数据 图片懒加载:始终加载当前屏的图片,减轻网站因为大量图片可能带来的压力。 先来看下最终的效果图。 layui.flow官方api文档 layui.flow官方案例演示文档 flow模块的方法和参数说明 flow模块包含两个核心方法,如下所示: layui.use('flow', function(){ var flow = layu

星银色飞行船的博客 3539

Simulink与C/C++的无缝对接:自定义结构体变量导入实战指南

本文详细介绍了如何将C/C++自定义结构体导入Simulink环境,实现无缝数据对接。通过编写标准C头文件、配置MEX编译环境(如MinGW),并利用`Simulink.importExternalCTypes`函数,可将结构体转换为Simulink Bus对象,从而提升复杂系统模型的可读性、可维护性及仿真与代码生成效率。

weixin_29093017的博客 481

layui框架实战案例(17):流加载文档layui.flow组件的前后端解决方案

layui.flow,模块包含信息流加载和图片懒加载两大核心支持,无论是对服务端、还是前端体验,都有非常大的性能帮助。

挖掘大数据价值,让决策者快速洞悉趋势,让大众读懂数据背后的故事。 1634

1、符号回归:原理、应用与实践

本文全面介绍了符号回归(Symbolic Regression)的原理、发展历程、核心算法及其在科学与工程领域的广泛应用。文章从基本概念出发,详细阐述了基于遗传编程的符号回归机制,并探讨了其在游艇水动力学、化学过程、锂离子电池、生物医学等多个领域的实际应用。同时,博文还涵盖了高级技术如知识集成、系数优化、预测区间计算及微分方程发现等内容,对比了开源与商业软件工具,并展望了未来发展趋势,旨在为研究人员和从业者提供一本实用的符号回归指南。

ipfs8storage的博客 248

基于mengzi-t5训练生成式模型

【代码】基于mengzi-t5训练生成式模型。

开卷有益 169

layui框架学习(33:流加载模块)

学习并记录layui框架中内置模块的流加载模块的函数、参数设置方式。

gc_2299的博客 1231

华为OD机试真题 新系统 2026-04-22 Python&JS 实现【小学生班长选举增强版】

9 月份开学第一天,小学某班级进行班长选举活动,班级共有 N 个学生,每个学生最多可投 3 票(对同一个人只能投一票),也可以弃权不投票,大家投票时写上对应学生的名字。 假设学生不存在重名。考虑到部分少数民族名字带分隔,且整体较长,同学在投票时为了方便,允许同学写全称,也可以只写其中的部分连续段。 例如班级里只有 2 个少数民族名称带点的同学:

MISAYAONE的博客 316

layui实现信息流加载

layui实现信息流加载 引用一下layui官网的信息流概念: 信息流即异步逐页渲染列表元素,这是你页面已经存在的一段列表,你页面初始时只显示了6个 //HTML <ul id="demo"> <li>1</li> <li>2</li> <li>3</li> <li>4</li&g...

xiaojun201593的博客 4928

HyperLynx(十三)Hyperlynx前放置之对网络的EMC分析

在“Spectrum Analyzer”对话框的“Stimulus”(激励)栏中,设置激励源频率为100MHz,选择“IC modeling”为“Fast-Strong”,并按图所示设置其他选项。显然,在仿真的基频上,它的幅值最大,将鼠标光标置于柱状图上,可以读取其值为64.28mA,这个数值是由选定的驱动芯片决定的。按上图所示的原理图,在接收端增加一个并联的RC负载,再次运行仿真,结果如图所示。在对话框左侧的“Pins”列表中,显示出了已添加电流探针的引脚,可以在此列表中选择所要仿真的目标。...

小幽余生不加糖 4677

AD(Altium Designer)器件封装——立创商城导出原理图和PCB完成器件封装操作指南

官网:www.SZLCSC.COM以芯片为例器件类——>芯片类——>对应芯片确定芯片——>数据手册1:原理图2:PCB3:打开操作流程选中原理图——>文件——>导出——>AD1: ✔2:导出AD文件操作流程选中PCB图——>文件——>导出——>AD1: ✔2:导出AD文件1:PCB图2:原理图操作流程文件——>打开操作流程选中文件——>打开操作流程项目文件——>添加新的...到工程——>Schematic Library新原理图库操作流程项目文件——>添加新的...到工程——>PCB Library新的PC

XU157303764的博客 5434

Layui:信息流加载和图片懒加载

生而为人 谁不付出 谁不努力 本篇文章主要讲述了是使用第三方插件layui中是流加载模块,该模块包含信息流加载和图片懒加载两大核心支持,无论是对服务端、还是前端体验,都有非常大的性能帮助。你可能已经在太多的地方看到她们的身影了,但不妨现在开始,体验一下Layui更为简单和高效的Flow吧。 使用 flow模块包含两个核心方法,如下所示: codelayui.code layui.u...

tanqingfu1的博客 2956

HTML蓝色动态爱心(完整代码)

HTML语言实现蓝色动态爱心的完整代码。

AIGC 8万+

layui flow信息流加载 layui如何实现滚动加载更多

漏掉 next(data, hasMore) 调用,后续加载就卡住isAuto 默认为 true,设为 false 后需手动调用 next() 触发下一页,适合点击加载场景scrollElem 可显式指定滚动容器(比如 '.main-wrapper'),否则默认找 elem 的父级,容易错绑加载中 loading 图不显示或位置错乱flow 内置的 loading 是靠绝对定位 + 动态插入 DOM 实现的,样式冲突或容器定位异常会直接让它消失。

weixin_42499936的博客 186

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

img加载本地图片_layui.flow(layui的流加载),图片懒加载,炒鸡好用哦~

目录 前言flow模块参数:官方说明案例代码1.前言 layui.flow官方api文档:https://www.layui.com/doc/modules/flow.html读完本文您将了解到:layui的滚动流加载,手动流加载,以及图片的懒加载。1.滚动加载:拖动右边的滚动条,即可获取新的数据,效果图如下。2.手动加载:点击【加载更多】,即可获取新的数据,效果图如下。3.图片懒加载:...

weixin_39952074的博客 981

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

解决90%滚动加载难题:Layui Flow组件重新加载机制深度解析与实战指南

你是否还在为信息流网站的滚动加载卡顿、重复请求、数据错乱而头疼?是否尝试过多种方案仍无法实现流畅的内容加载体验?本文将带你深入剖析Layui Flow组件的重新加载机制,从原理到实战,彻底解决滚动加载的常见痛点。读完本文,你将掌握Flow组件的高级用法,能够轻松应对复杂场景下的动态数据加载需求。 ## Flow组件核心能力与应用场景 Layui Flow组件是一套遵循原生态开发模式的Web U...

gitblog_00670的博客 383

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

layui查档页面_Layui流加载文档 - layui.flow

信息流即异步逐页渲染列表元素,这是你页面已经存在的一段列表,你页面初始时只显示了6个12……6你想通过加载更多来显示余下列表,那么你只需要执行方法:flow.load(options) 即可layui.use('flow', function(){var $ = layui.jquery; //不用额外加载jQuery,flow模块本身是有依赖jQuery的,直接用即可。var flow = la...

weixin_39941847的博客 436

img layui 流_layui.flow-流加载模块文档

信息流即异步逐页渲染列表元素,这是你页面已经存在的一段列表,你页面初始时只显示了6个12……6你想通过加载更多来显示余下列表,那么你只需要执行方法:flow.load(options) 即可layui.use('flow', function(){var $ = layui.jquery; //不用额外加载jQuery,flow模块本身是有依赖jQuery的,直接用即可。var flow = la...

weixin_39712969的博客 263

PHP加layui信息流加载,使用ThinkPHP5和前端框架layui的信息流加载实现文章的自动加载...

本文主要是在基于ThinkPHP5和前端框架layui开发的内容管理系统中,利用thinkPHP5的api特性和layui的信息流加载实现文章的自动加载,即列表不分页,自动加载下一页信息。关于thinkPHP5和layui的更多内容,请移步阅读官方文档,也可在本站搜索一下,应该还要一些相关内容,更多内容正在补充中。本例中场景为:网站首页默认加载10篇文章,往下拖动滚动条,自动再加载10篇文章,直至...

weixin_33140809的博客 394

解决Layui表格与Flow流加载结合的3大核心难题

你是否还在为大数据表格加载缓慢而烦恼?用户抱怨等待时间过长?本文将详细解析如何通过Layui表格(Table)与流加载(Flow)组件的无缝结合,解决传统分页加载的痛点,实现数据的平滑加载体验。读完本文,你将掌握两者结合的实现方法、常见问题解决方案以及性能优化技巧。 ## 传统分页加载的痛点分析 传统的分页加载方式在处理大量数据时往往存在以下问题: - **用户体验差**:需要频繁点击页码,...

gitblog_01094的博客 506

layui - 流加载

模块:layui.use( 'flow', function(){ var flow=layui.flow;} ) 核心方法: layui.use( 'flow', function(){ var flow=layui.flow; flow.load(options); /*信息流*/ flow.lazyimg(options); /*图片懒加载*/ } ) 参考:https://www.layui.com/doc/modules/flow.html 信息流: 信息流即...

weixin_42361858的博客 1378

Layui流式布局flow.js:瀑布流布局实现方法

Layui是一款经典的前端UI框架,其内置的flow.js模块为开发者提供了强大的流式布局解决方案。本文将详细介绍如何使用Layui的flow.js模块实现瀑布流布局,包括基础概念、核心API、实现步骤以及高级应用技巧,帮助开发者轻松应对信息流展示和图片懒加载等常见需求。 ## 流加载模块概述 流加载(flow)是Layui框架中用于实现滚动按需加载的模块,主要应用于信息流和图片列表场景,能够...

gitblog_00735的博客 484

彻底解决!Layui Flow组件重新加载失效的5个实战方案

你是否遇到过Layui Flow(流加载)组件无法重新加载数据的问题?下拉到底部没反应?筛选条件切换后数据不更新?别担心,本文将从根本原因出发,提供5种经过实战验证的解决方案,让你的信息流加载如丝般顺滑。 ## 问题现象与影响范围 Layui Flow组件([官方文档](https://link.gitcode.com/i/81da3cf0e659e4b7253687f47c6fb715))作...

gitblog_00635的博客 515

flow组件常见用法总结

该模块包含 信息流加载 和 图片懒加载两大核心支持,无论是对服务端、还是前端体验,都有非常大的性能帮助。下边分别给出了这两种技术的使用方法。

liuliuhelingdao的博客 683

layui里面的流加载学习总结

开发工具与关键技术: layui里面的流加载学习总结 作者:李梓良 撰写时间:2019年7月16日 一.灵活运用加载流的代码 1.Elem是参数,String是类型,描述: 指定列表容器的选择器 2.scrollElem是参数,是string类型,描述: 滚动条所在元素选择器,默认document。如果你不是通过窗口滚动来触发流加载,而是页面中的某一个容器的滚动条,那么通过该参数指定即可。 3....

weixin_44540616的博客 1410
上一篇: ajax返回的html文本加入dom,用js如何绑定事件
下一篇: layui中使用layer加载层,第一次默认360px,解决方法
自娱自乐22
博客等级 码龄18年 241粉丝 135原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值