基本流程
- 第一屏图片不用Ajax加载,默认写在页面上。第一屏要以最快效率打开,待JS文件下载后再Ajax请求明显要慢。
- 滚动到最后一行图片时开始加载图片,每次加载两行,每行4张图片(4列布局)。位置计算是关键的,可以以页面中翻页容器或页面footer为参考点,如果scrollTop大概等于翻页容器或footer的top则开始加载。这里的大概根据需求适当缩减100-300px。
加载规则
- 各列容器按高度从低到高排序
- Ajax请求的图片数据按高度从高到低排序
- 拼凑HTML片段后把最高的item添加到最低的列容器中,以尽量保证拖动多次后各列高度相当,不至于某列空白太多
一些补充
- 加载的元素item一般采用动画淡出(fadeIn)
- 滚动事件scroll的hander被调用太频繁,可采用“防弹跳”技术,即设定一个时间值,比如300ms,300ms内的调用被clearTimeout掉。可避免拖动滚动条时卡。
// 防止弹跳,避免scroll时频繁调用 function debounce(fn, wait) { var timer return function() { var later = function() { timer = null fn(arguments) } clearTimeout(timer) timer = setTimeout(later, wait) } }
相关推荐
[ Android 瀑布流简单实现 ] Android 瀑布流简单实现对图片的处理
定制cell,重写UICollectionViewLayout方法
一个简单的瀑布流的实现,实现了瀑布流功能,但是不能添加头部和底部视图,如项目中有添加头部或底部视图的需求,请自行修改!
简单实现下瀑布流,熟悉一下方法
简单的js实现瀑布流示例,相关技术jq。可借鉴。。。。
利用两个TableView,写出了一个简单的瀑布流dome,希望能够帮到有需要的人
React Native 瀑布流列表,用于展示瀑布流形式的内容,定制简单。
最少代码的瀑布流实现预览效果是一款使用chrome或是全屏浏览的最佳页面效果。 最少代码的瀑布流实现预览
WinforDataGridView实现瀑布流.rar 功能很简单 需要改进
自己做的一个横向排序的瀑布流模块的实现,结构简单,实用性强
最近做项目,网上搜索的瀑布流demo,有简单的,有可以下拉刷新加载的;实现方式有3种以上。
为了保证大家能够充分理解瀑布流的实现原理,就尽量保证了实例的简单性,这款瀑布流仅仅使用了php数组作为瀑布流所加载的内容,没有数据表文件,有php开发环境的话,瞬间就可以在本地搭起来看效果。经过优化后,完美...
vue简单实现瀑布流布局的一种方式(vue瀑布流组件),供大家参考,具体内容如下 vue中的瀑布流布局组件 需求:图片容器宽度固定,高度根据图片自适应,图片一行不能排列时候,换行依次从左往右排列。(瀑布流概念) ...
仿Pinterest网格瀑布流响应式布局代码,支持响应式自适应浏览器宽度,使用简单,非常实用的一个瀑布流图片网页特效。
瀑布流的组件,在别人的基础上进行删改,去掉了无用的一些功能,力争做成最简单纯组件
c# Ajax实现的瀑布流 Demo 简单 操作方便
瀑布流的简单实现
这里是计算机专业-Andorid项目源码100套之一的Android瀑布流实现,类似于蘑菇街和迷尚 应用里的排列,希望能对大家有所帮助哦!
网上有很多瀑布流插件,今天特意挑选了一个比较简单的插件jQuery.blocksit.js 不过他只能实现图片的流式排列,无法实现图片预加载功能(即:边拖拉网页边加载图片) 懒人站长特意在此瀑布流上增加了jQuery....