本文介绍如何解决Layui Flow模块在图片加载失败时显示裂痕的问题。通过修改lay/modules/flow.js源码,调整对src和lay-src属性的判断逻辑,可实现加载过程中显示自定义loading图片。文中提供了三种具体的代码修改方式及对应效果。
Layui Flow加载失败默认表现
当使用流式加载图片时,若图片加载失败,默认情况下会显示表示图片缺失的裂痕图标。

具体实现代码如下所示:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="layui/css/layui.css" rel="external nofollow" media="all">
</head>
<body>
<img lay-src="loadingImg/aaa.jpg">
<img src="loadingImg/bbb.jpg" alt="该图片不会加载">
<!--ddd.jpg 图片不存在-->
<img src="loadingImg/ddd.jpg">
<img src="loadingImg/loading.gif" lay-src="ddd.jpg">
<img src="loadingImg/loading.gif" lay-src="loadingImg/aaa.jpg">
<script src="layui/layui.js"></script>
<script type="text/javascript">
var $;
layui.use(['flow', 'jquery'], function () {
var flow = layui.flow;
$ = layui.jquery;
flow.lazyimg();
});
</script>
</body>
</html>
图片存放目录结构如下:

修改flow.js源码实现占位图
实现该功能的具体修改方法如下:
在HTML中,img标签的src属性指定为loading占位图的地址,而lay-src属性指定为真实图片的地址。当图片懒加载机制触发时,系统会自动将src替换为lay-src指向的真实图片路径。
<img src="loadingImg/loading.gif" lay-src="ddd.jpg">
接下来需要修改相关的JavaScript文件。
lay/modules/flow.js 检索 &&!e.attr("src")
这里提供三种不同的修改策略:
第一种方法是直接删除代码中的&&!e.attr("src")判断条件。
第二种方法是将判断条件修改为&&e.attr("lay-src")。
第三种方法是将判断条件修改为&&!e.attr("lay-src")。

完成上述代码修改后,页面加载效果如下:

注意: 
以上关于Layui Flow模块中loading占位图的实现方法即为全部内容,希望能为读者提供参考,并欢迎大家继续支持本站。