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 相关文章推荐
JQuery+JS实现仿百度搜索结果中关键字变色效果
Aug 02 Javascript
JavaScript 对任意元素,自定义右键菜单的实现方法
May 08 Javascript
Jquery 在页面加载后执行的几种方式
Mar 14 Javascript
javascript作用域和闭包使用详解
Apr 25 Javascript
整理JavaScript创建对象的八种方法
Nov 03 Javascript
解决jquery无法找到其他父级子集问题的方法
May 10 Javascript
AngularJS递归指令实现Tree View效果示例
Nov 07 Javascript
微信小程序实战之自定义toast(6)
Apr 18 Javascript
Node.js搭建小程序后台服务
Jan 03 Javascript
js实现倒计时秒杀效果
Mar 25 Javascript
原生JavaScript实现刮刮乐
Sep 29 Javascript
jQuery实现简单评论区功能
Oct 26 jQuery
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
Ajax PHP简单入门教程代码
2008/04/25 PHP
限制ckeditor上传图片文件大小的方法
2013/11/15 PHP
学习php设计模式 php实现模板方法模式
2015/12/08 PHP
全面了解PHP中的全局变量
2016/06/17 PHP
JS中Iframe之间传值及子页面与父页面应用
2013/03/11 Javascript
jquery鼠标滑过提示title具体实现代码
2013/08/06 Javascript
jCallout 轻松实现气泡提示功能
2013/09/22 Javascript
js中for in的用法示例解析
2013/12/25 Javascript
Jquery 实现table样式的设定
2015/01/28 Javascript
javascript实现表单提交后,提交按钮不可用的方法
2015/04/18 Javascript
JavaScript中的Function函数
2015/08/27 Javascript
javascript运动效果实例总结(放大缩小、滑动淡入、滚动)
2016/01/08 Javascript
vue实现简单表格组件实例详解
2017/04/16 Javascript
前端构建工具之gulp的配置与搭建详解
2017/06/12 Javascript
微信小程序实现图片放大预览功能
2020/10/22 Javascript
使用Node搭建reactSSR服务端渲染架构
2018/08/30 Javascript
基于Vue2-Calendar改进的日历组件(含中文使用说明)
2019/04/14 Javascript
python pickle 和 shelve模块的用法
2013/09/16 Python
Django基础之Model操作步骤(介绍)
2017/05/27 Python
基于python批量处理dat文件及科学计算方法详解
2018/05/08 Python
python使用KNN算法识别手写数字
2019/04/25 Python
python中复数的共轭复数知识点总结
2020/12/06 Python
Html5新增标签与样式及让元素水平垂直居中
2019/07/11 HTML / CSS
英国最大的经认证的有机超市:Planet Organic
2018/02/02 全球购物
中国茶叶、茶具一站式网上购物商城:醉品茶城
2018/07/03 全球购物
教师先进工作者事迹材料
2014/05/01 职场文书
大学计划书范文800字
2014/08/14 职场文书
辞旧迎新演讲稿
2014/09/15 职场文书
优秀教师个人材料
2014/12/15 职场文书
教师个人学习总结
2015/02/11 职场文书
2015庆祝七一建党节94周年活动总结
2015/03/20 职场文书
离婚起诉书范本
2015/05/18 职场文书
毕业设计答辩开场白
2015/05/29 职场文书
2016年教师节特级教师获奖感言
2015/12/09 职场文书
2016高一新生军训心得体会
2016/01/11 职场文书
vue Element-ui表格实现树形结构表格
2021/06/07 Vue.js