最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

layui框架的flow组件常见用法总结

来源:懂视网 责编:小采 时间:2020-11-03 18:19:44
文档

layui框架的flow组件常见用法总结

layui框架的flow组件常见用法总结:该模块包含 信息流加载 和 图片懒加载 两大核心支持,无论是对服务端、还是前端体验,都有非常大的性能帮助。下边分别给出了这两种技术的使用方法:一、信息流加载信息流加载的核心方法时 flow.load(options) ,下边给了一个模拟加载新闻列表的栗子前端htm
推荐度:
导读layui框架的flow组件常见用法总结:该模块包含 信息流加载 和 图片懒加载 两大核心支持,无论是对服务端、还是前端体验,都有非常大的性能帮助。下边分别给出了这两种技术的使用方法:一、信息流加载信息流加载的核心方法时 flow.load(options) ,下边给了一个模拟加载新闻列表的栗子前端htm

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

一、信息流加载

信息流加载的核心方法时 flow.load(options) ,下边给了一个模拟加载新闻列表的栗子

前端html和js

<style>
 ul li {
 height: 200px;
 border: 5px solid green;
 font-size: 50px;
 line-height: 200px;
 text-align: center;
 }
 </style>
 <ul id="newsList"></ul>
 <!-- 条目中可以是任意内容,如:<img src=""> -->
 <script src="~/Content/layui/layui.js"></script>
 <script>
 layui.use('flow', function () {
 var $ = layui.jquery; //不用额外加载jQuery,flow模块本身是有依赖jQuery的,直接用即可。
 var flow = layui.flow;
 flow.load({
 elem: '#newsList' //指定列表容器
 , isAuto: false //到底页面底端自动加载下一页,设为false则点击'加载更多'才会加载
 //, mb: 100 //距离底端多少像素触发auto加载
 , isLazying: true //当单个li很长时,内部有很多图片,对图片进行懒加载,默认false。
 , end: '<p style="color:red">木有了</p>' //加载所有后显示文本,默认'没有更多了'
 , done: function (page, next) { //到达临界,触发下一页
 var lis = [];
 $.get('/Home/GetList?page=' + page, function (res) {
 //假设你的列表返回在data集合中
 layui.each(res.data, function (index, item) {
 lis.push('<li>' + item + '</li>');
 });
 next(lis.join(''), page < res.pages);//pages是后台返回的总页数
 });
 }
 });
 });
 </script>

后台服务器代码

public class HomeController : Controller
 {
 // GET: Home
 public ActionResult Index()
 {
 return View();
 }
 public ActionResult GetList(int page)
 {
 //简单数据库中新闻
 List<string> newsList = new List<string>();
 for (int i = 0; i < 55; i++)
 {
 newsList.Add("新闻" + i);
 }
 //总页数
 int pages =(int) Math.Ceiling((double)55 / 10);
       //模拟分页
 var data= newsList.Skip<string>((page - 1) * 10).Take(10);
 return Json(new { data,pages},JsonRequestBehavior.AllowGet);
 }
 }

二、图片懒加载

layui中的图片懒加载十分简单,将图片的src属性替换为lay-src,然后调用 flow.lazyimg() 方法即可

layui.use('flow', function(){
 var flow = layui.flow;
 //当你执行这样一个方法时,即对页面中的全部带有lay-src的img元素开启了懒加载
 flow.lazyimg(); //方式一,全部懒加载
 flow.lazyimg({ //方式二,特定容器懒加载
 elem:'#box1' //不设置elem,对页面中所有图片进行懒加载
 ,scrollElem:document
 }) 
});

更多layui知识请关注layui使用教程栏目。

文档

layui框架的flow组件常见用法总结

layui框架的flow组件常见用法总结:该模块包含 信息流加载 和 图片懒加载 两大核心支持,无论是对服务端、还是前端体验,都有非常大的性能帮助。下边分别给出了这两种技术的使用方法:一、信息流加载信息流加载的核心方法时 flow.load(options) ,下边给了一个模拟加载新闻列表的栗子前端htm
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top