jquery实现超简单的瀑布流布局【推荐】


Posted in Javascript onMarch 08, 2017

1.看看效果吧!

jquery实现超简单的瀑布流布局【推荐】

2.html代码index.html

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
 <style>
 ul{position: relative;padding: 0 -3px;list-style: none;width: 600px;margin: 0 auto}
 li{width: 33.33%;position: absolute;box-sizing: border-box;display: block; }
 img{width: 100%;height: auto;display: block;}
 </style>
 <script src="./jquery-1.12.4.min.js"></script>
</head>
<body style="background: #000">
 <ul class="flowLayout-box">
 <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u17.png" alt=""></li>
 <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u19.png" alt=""></li>
 <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u114.png" alt=""></li>
 <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u116.png" alt=""></li>
 <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u118.png" alt=""></li>
 <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u120.png" alt=""></li>
 <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u132.png" alt=""></li>
 </ul>
</body>
</html>

3.插件代码

(function ($) {
 $.fn.flowLayout = function(options) {
 var dft = {
 gapWidth:16, //间隙
 gapHeight:16, //间歇
 column:3 //列
 };
 var ops = $.extend(dft,options);
 var _this = $(this);
 _this.width((_this.parents('.flowLayout-box').width()-2*ops.gapWidth)/3)
 var _pWidth=_this.parents('.flowLayout-box').width();
 $(".flowLayout-box").css({
 'opacity':0
 });
 var columnHeight=[],columnIndex=0;
 for (var i=0 ;i<ops.column;i++){
 columnHeight.push(0);
 }
 setTimeout(function () {
 for(var j =0 ; j< _this.length ;j++){
 console.log(columnHeight[columnIndex]);
 $(_this).eq(j).css({
 'top':columnHeight[columnIndex]+ops.gapHeight+'px',
 'left':_pWidth*columnIndex/3+'px'
 })
 columnHeight[columnIndex]+=$(_this).eq(j).height()+ops.gapHeight
 columnIndex=getIndex();
 }
 },50)
 function getIndex() {
 var columnIndex=0,maxHeight=0;
 for(var i =0 ;i < columnHeight.length ;i++){
 if(columnHeight[i]<columnHeight[columnIndex]){
 columnIndex=i;
 }
 if(columnHeight[i]>maxHeight){
 maxHeight=columnHeight[i]
 }
 }
 $(".flowLayout-box").css({
 'opacity':1,
 'height':maxHeight
 });
 return columnIndex;
 }
 }
 })(jQuery); 

4.调用代码

$(function () {
 $('.flowLayout-box li').flowLayout({});
 })

代码简单,容易修改,,拿去用吧。。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
[原创]js与自动伸缩图片 自动缩小图片的多浏览器兼容的方法总结
Mar 12 Javascript
Dojo之路:如何利用Dojo实现Drag and Drop效果
Apr 10 Javascript
JavaScript DOM 学习第五章 表单简介
Feb 19 Javascript
js自动下载文件到本地的实现代码
Apr 28 Javascript
jquery获取被勾选的checked(选中)的那一行的3列和4列的值
Jul 04 Javascript
JS 页面计时器示例代码
Oct 28 Javascript
ZeroClipboard插件实现多浏览器复制功能(支持firefox、chrome、ie6)
Aug 30 Javascript
BootStrap与Select2使用小结
Feb 17 Javascript
vue初尝试--项目结构(推荐)
Jan 30 Javascript
详解Vue-Router源码分析路由实现原理
May 15 Javascript
解决Vue打包上线之后部分CSS不生效的问题
Nov 12 Javascript
浅谈JavaScript中this的指向更改
Jul 28 Javascript
bootstrap表单按回车会自动刷新页面的解决办法
Mar 08 #Javascript
jquery仿苹果的时间/日期选择效果
Mar 08 #Javascript
jQuery插件HighCharts绘制2D带Label的折线图效果示例【附demo源码下载】
Mar 08 #Javascript
js/jq仿window文件夹移动/剪切/复制等操作代码
Mar 08 #Javascript
jquery仿ps颜色拾取功能
Mar 08 #Javascript
关于Javascript中document.cookie的使用
Mar 08 #Javascript
JavaScript中transform实现数字翻页效果
Mar 08 #Javascript
You might like
星际实力自我测试
2020/03/04 星际争霸
php下实现农历日历的代码
2007/03/07 PHP
YII2框架中behavior行为的理解与使用方法示例
2020/03/13 PHP
javascript offsetX与layerX区别
2010/03/12 Javascript
用jquery与css打造个性化的单选框和复选框
2010/10/20 Javascript
利用js实现选项卡的特别效果的实例
2013/03/03 Javascript
jQuery中校验时间格式的正则表达式小结
2013/09/22 Javascript
JavaScript实现的石头剪刀布游戏源码分享
2014/08/22 Javascript
JavaScript实现鼠标滑过处生成气泡的方法
2015/05/16 Javascript
JavaScript的9种继承实现方式归纳
2015/05/18 Javascript
JS继承之借用构造函数继承和组合继承
2016/09/07 Javascript
NProgress显示顶部进度条效果及使用详解
2019/09/21 Javascript
在vue中使用vuex,修改state的值示例
2019/11/08 Javascript
理解JavaScript中的对象
2020/08/25 Javascript
在Vue中使用Select选择器拼接label的操作
2020/10/22 Javascript
[02:32]【DOTA2亚洲邀请赛】iceice,梦开始的地方
2017/03/13 DOTA
python和bash统计CPU利用率的方法
2015/07/10 Python
Python 数据处理库 pandas进阶教程
2018/04/21 Python
Python编程flask使用页面模版的方法
2018/12/28 Python
Django 实现admin后台显示图片缩略图的例子
2019/07/28 Python
django 通过URL访问上传的文件方法
2019/07/28 Python
Python 音频生成器的实现示例
2019/12/24 Python
Python读取excel文件中带公式的值的实现
2020/04/17 Python
python中判断数字是否为质数的实例讲解
2020/12/06 Python
洛佩桑酒店官方网站:Lopesan Hotels
2019/04/15 全球购物
英格兰足协官方商店:England Store
2019/07/12 全球购物
你对IPv6了解程度
2016/02/09 面试题
职高毕业生自我鉴定
2013/10/21 职场文书
自我鉴定200字
2013/10/28 职场文书
劳动竞赛口号
2014/06/16 职场文书
爱护公共设施演讲稿
2014/09/13 职场文书
公民代理授权委托书
2014/09/24 职场文书
2014年医院后勤工作总结
2014/12/06 职场文书
学生会副主席竞选稿
2015/11/19 职场文书
欧元符号 €
2022/02/17 杂记
MongoDB支持的索引类型
2022/04/11 MongoDB