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 相关文章推荐
javascript之ESC(第二类混淆)
May 06 Javascript
open 动态修改img的onclick事件示例代码
Nov 13 Javascript
javascript操作符&quot;!~&quot;详解
Feb 10 Javascript
js动态修改表格行colspan列跨度的方法
Mar 30 Javascript
jQuery使用serialize()表单序列化时出现中文乱码问题的解决办法
Jul 27 Javascript
jQuery点击弹出层弹出模态框点击模态框消失代码分享
Jan 21 Javascript
JS实现异步上传压缩图片
Apr 22 Javascript
Vue2仿淘宝实现省市区三级联动
Apr 15 Javascript
使用JSON格式提交数据到服务端的实例代码
Apr 01 Javascript
记录一次完整的react hooks实践
Mar 11 Javascript
Vue中Table组件行内右键菜单实现方法(基于 vue + AntDesign)
Nov 21 Javascript
VUE之图片Base64编码使用ElementUI组件上传
Apr 09 Vue.js
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
php获取从html表单传递数组的方法
2015/03/20 PHP
PHP获取HTTP body内容的方法
2018/12/31 PHP
实例介绍PHP中zip_open()函数用法
2019/02/15 PHP
php 使用mpdf实现指定字段配置字体样式的方法
2019/07/29 PHP
php7性能提升的原因详解
2019/10/13 PHP
PHP pthreads v3下worker和pool的使用方法示例
2020/02/21 PHP
jquery ui 1.7 ui.tabs 动态添加与关闭(按钮关闭+双击关闭)
2010/04/01 Javascript
onbeforeunload与onunload事件异同点总结
2013/06/24 Javascript
JQuery设置文本框和密码框得到焦点时的样式
2013/08/30 Javascript
JavaScript中join()方法的使用简介
2015/06/09 Javascript
JS实现从连接中获取youtube的key实例
2015/07/02 Javascript
JavaScript实现下拉菜单的显示和隐藏
2016/01/05 Javascript
javascript创建含数字字母的随机字符串方法总结
2016/08/01 Javascript
Bootstrap 设置datetimepicker在屏幕上面弹出设置方法
2017/03/21 Javascript
JScript实现表格的简单操作
2017/08/15 Javascript
简述vue中的config配置
2018/01/23 Javascript
vue.js获得当前元素的文字信息方法
2018/03/09 Javascript
js实现选项卡效果
2020/03/07 Javascript
基于JS实现table导出Excel并保留样式
2020/05/19 Javascript
Vue实现简易购物车页面
2020/12/30 Vue.js
Python3中的列表,元组,字典,字符串相关知识小结
2017/11/10 Python
python正则表达式及使用正则表达式的例子
2018/01/22 Python
python+mysql实现学生信息查询系统
2019/02/21 Python
解决yum对python依赖版本问题
2019/07/05 Python
Python 开发工具通过 agent 代理使用的方法
2020/09/27 Python
Python基础进阶之海量表情包多线程爬虫功能的实现
2020/12/17 Python
CSS3条纹背景制作的实战攻略
2016/05/31 HTML / CSS
使用canvas压缩图片上传的方法示例
2020/02/07 HTML / CSS
在印度上传处方,在线订购药品:Medlife
2019/03/28 全球购物
上海某公司.net方向笔试题
2014/09/14 面试题
旅游专业职业生涯规划范文
2014/01/13 职场文书
店长职务说明书
2014/02/04 职场文书
警察先进个人事迹材料
2014/05/16 职场文书
抗洪救灾感谢信
2015/01/22 职场文书
css position fixed 左右双定位的实现代码
2021/04/29 HTML / CSS
python数字转对应中文的方法总结
2021/08/02 Python