老是有一些老同事跟我说,我想做个瀑布流怎么做,我说网上有组件啊,回答总是说我不需要用异步接口,我只需要把我静态demo转成瀑布流样式就可以了,我就简单做了一个,我把JS放到load 事件里主要是怕图片宽高不确定的情况下用。
$(window).on("load",function(){
var waterfalls ={
init:function(){
var self = this;
self.cfg={
colu:4//这里定义4列可以自己配置
tArry:[],//每一列的最后一个的top值
lArry[],//每一列的left值
node:".item",//节点样式
width:235,//列宽
space:15//间距
};
self. _initArray()//初始化数组
self._render();//渲染瀑布流
},
/**
*初始化数组
*/
_initArray:function(){
var self = this;
for(var i=0;i<l=self.cfg.colu;i++){
self.cfg.tArray.push(0) ;
self.cfg.lArray.push(i*(self.cfg.width+self.cfg.space));
}
},
/**
*得到最小高度列
*/
_getMin:function(){
var self = this,minTop =self.cfg.tArray[0],minIndex= 0;
for(var i=0;i<l=self.cfg.colu;i++){
if(self.cfg.tArray[i]<minTop){
minTop = self.cfg.tArray[i];
minIndex = i;
};
};
return minIndex;
},
/**
*渲染瀑布流
*/
_render:function(){
var self = this;
$(self.cfg.item).each(function(item){
var min = self._getMin();
$(item).css({
top:self.cfg.tArray[min],
left:self.cfg.lArray[min]
});
self.cfg.tArray[min] += $(item).height()+15;
})
}
};
waterfalls.init();
});
相关推荐
瀑布流 非定位 简易瀑布流
在这个名为“Glide简单瀑布流DEMO”的项目中,我们将探讨如何结合Glide实现一个简单的瀑布流布局。 首先,我们要理解瀑布流布局的基本概念。瀑布流布局,又称为流式布局或Pinterest布局,特点是每一列的高度不固定...
在本项目“简易瀑布流”中,我们将探讨如何实现一个简单的瀑布流布局,主要涉及HTML、CSS以及jQuery的运用。 首先,HTML是构建网页的基础,我们需要创建一个容器元素来承载所有的子元素,通常这些子元素是图片或者...
在这个“iOS简单瀑布流的实现”中,我们将探讨如何创建一个基础的瀑布流布局,以及可能需要进行的扩展。 1. **基本概念**:瀑布流的核心在于计算每个单元格的位置和大小,使其能在不同列中适配。这通常涉及两个关键...
【标题】原生JS简单瀑布流图片无限加载带鼠标悬停图片遮罩效果 瀑布流布局,也称为Masonry布局,是一种网页布局样式,其中各元素可以不等宽,但垂直对齐,形成类似瀑布的效果。这种布局常用于图片展示网站,如...
实现源生简易瀑布流,我们主要关注以下几个关键点: 1. **HTML结构**:首先,我们需要创建一个容器div,用于包含所有的元素(通常为img标签或自定义的div)。每个元素都要设置好宽高比,以保持原始比例。 ```html ...
"ios-简单瀑布流.zip"是一个压缩包,其中包含了一个名为"EWaterFallView"的项目,它提供了对iOS应用中实现瀑布流布局的支持,并且兼容CocoaPods,这是一种方便的iOS依赖管理工具。 EWaterFallView项目可能是基于...
描述中提到的“uniapp插件(组件) 拖入即用 只需要引入 相关dom”,意味着这个插件是一个高度封装的解决方案,开发者无需深入了解瀑布流布局的复杂实现,只需简单地将插件拖入项目,并在页面中引入对应的DOM元素,...
在"Jquery简单瀑布流代码示例 咿呀网提供"这个项目中,我们将使用jQuery结合一个名为`jquery.masonry.min.js`的插件来创建瀑布流布局。`jquery.masonry.min.js`是Dave DeSandro开发的一个轻量级插件,它可以自动调整...
【瀑布流布局】 瀑布流布局,又称为Masonry布局,是一种常见的网页设计布局方式,尤其在图片展示网站中广泛应用。这种布局模式模仿了物理世界中的瀑布,使得页面中的元素可以像水滴一样自然地垂直下落,形成不规则但...
学习css简单瀑布流,直接浏览器打开html文件
在提供的标题"比较容易懂的瀑布流代码"中,我们可以理解这是一段基于ThinkPHP框架实现的简单瀑布流代码。ThinkPHP是中国较为流行的PHP开发框架,它提供了一套完整的MVC(Model-View-Controller)模式,使得开发者...
瀑布流布局,也被称为Masonry布局,是一种常用于图片展示或商品列表的网页设计模式,它的特点是元素在页面上自适应地垂直排列,形成一种类似瀑布倾泻的效果。这种布局方式能够有效地利用屏幕空间,使得视觉效果更加...
本项目通过Android Studio 2.3.3环境实现,展示了RecyclerView的多样化布局,包括水平布局、垂直布局、普通网格布局以及简单的瀑布流布局。 1. RecyclerView基本使用 RecyclerView的核心组件包括LayoutManager、...
3. **多样式支持**:通过简单的配置,可以实现不同类型的元素在瀑布流中以不同的样式展示,比如图片、文本块等。 4. **延迟加载**:为了提高页面加载速度,Wookmark支持懒加载,即只有当用户滚动到可视区域时,才会...
1. **纯CSS实现**:利用CSS3的`column-count`和`column-gap`属性,可以创建多列布局,但这种方法在元素的动态加载和响应式设计方面存在局限性,适用于静态内容的简单瀑布流布局。 2. **JavaScript库实现**:例如...
在给定的"demo2"文件中,很可能是包含了一个简单的瀑布流实现示例,可能包括HTML结构、CSS样式和JavaScript脚本。 要深入了解和使用瀑布流布局,你需要掌握以下知识点: 1. CSS布局技术:包括盒模型、Flexbox、Grid...
在这个“简单的瀑布流”项目中,我们主要关注的是如何使用jQuery和JavaScript实现这一效果。 首先,瀑布流的核心是计算元素的宽度和位置,以确保它们在页面上正确地排列。通常,我们会选择一个固定宽度的列,并根据...
1. **CSS Flexbox布局**:现代浏览器支持的Flexbox(弹性盒布局)提供了创建瀑布流布局的一个简单方法。通过设置容器的`display: flex`和`flex-wrap: wrap`属性,可以让子元素在一行内自动换行。再利用`align-items:...
【基于jQuery简单可自定义响应式手机电脑端瀑布流】是一种流行的技术实现方式,用于创建在不同设备上都能良好展示的动态布局。这种布局模式,通常称为“瀑布流”或“Masonry布局”,以视觉上的瀑布效果而得名,即...