jQuery实现的瀑布流加载效果示例


Posted in Javascript onSeptember 13, 2016

本文实例讲述了jQuery实现的瀑布流加载效果。分享给大家供大家参考,具体如下:

demo.js:

$(function(){
  $('img').load(function(){
    var box = $('.box');
    var boxHeight = {
      leftBox:[],
      centerBox:[],
      rightBox:[]
    }
    for(var i=0;i<box.length;i++){
      var now = i%3;   //now的值为0,1,2
      switch(now){
        case 0:
          box.eq(i).css('left','10px');
          boxHeight.leftBox.push(box.eq(i).height());
          var now2 = Math.floor(i/3);
          if(now2==0){
            box.eq(i).css('top',0);
          }else{
            var total = 0;
            for(var j=0;j<now2;j++){
              total += boxHeight.leftBox[j]+10;
            }
            box.eq(i).css('top',total+'px')
          }
        break;
        case 1:
          box.eq(i).css('left','270px');
          boxHeight.centerBox.push(box.eq(i).height());
          var now2 = Math.floor(i/3);
          if(now2==0){
            box.eq(i).css('top',0);
          }else{
            var total = 0;
            for(var j=0;j<now2;j++){
              total += boxHeight.centerBox[j]+10;
            }
            box.eq(i).css('top',total+'px')
          }
        break;
        case 2:
          box.eq(i).css('left','530px');
          boxHeight.rightBox.push(box.eq(i).height());
          var now2 = Math.floor(i/3);
          if(now2==0){
            box.eq(i).css('top',0);
          }else{
            var total = 0;
            for(var j=0;j<now2;j++){
              total += boxHeight.rightBox[j]+10;
            }
            box.eq(i).css('top',total+'px')
          }
        break;
      }
    }
  });
});

demo.html:

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>waterFall</title>
<style>
*{
  padding: 0;
  margin: 0;
}
.wrap{
  position: relative;
}
.box{
  position: absolute;
  left: 0;
  top: 0;
  width: 250px;
}
.box img{
  width: 250px;
}
</style>
<script src="jquery.js"></script>
<script src="demo.js"></script>
</head>
<body>
<div class="wrap">
  <div class="box">
    <img src="1.jpg" alt="">
    <p>1111111</p>
  </div>
  <div class="box">
    <img src="2.jpg" alt="">
    <p>22222222</p>
  </div>
  <div class="box">
    <img src="3.jpg" alt="">
    <p>33333333</p>
  </div>
  <div class="box">
    <img src="4.jpg" alt="">
    <p>4444444</p>
  </div>
  <div class="box">
    <img src="5.jpg" alt="">
    <p>55555555</p>
  </div>
  <div class="box">
    <img src="6.jpg" alt="">
    <p>666666666666</p>
  </div>
  <div class="box">
    <img src="7.jpg" alt="">
    <p>77777777</p>
  </div>
  <div class="box">
    <img src="8.jpg" alt="">
    <p>888888888888888</p>
  </div>
  <div class="box">
    <img src="9.jpg" alt="">
    <p>99999999999999</p>
  </div>
</div>
</body>
</html>

效果图如下:

jQuery实现的瀑布流加载效果示例

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
仅Firefox中链接A无法实现模拟点击以触发其默认行为
Jul 31 Javascript
扩展JavaScript功能的正确方法(译文)
Apr 12 Javascript
jquery.post用法之type设置问题
Feb 24 Javascript
使用VS开发 Node.js指南
Jan 06 Javascript
javascript实现仿IE顶部的可关闭警告条
May 05 Javascript
使用yeoman构建angular应用的方法
Aug 14 Javascript
vue axios 简单封装以及思考
Oct 09 Javascript
微信小程序获取用户信息的两种方法wx.getUserInfo与open-data实例分析
May 03 Javascript
vue实现后台管理权限系统及顶栏三级菜单显示功能
Jun 19 Javascript
layui的数据表格+springmvc实现搜索功能的例子
Sep 28 Javascript
解决vue中axios设置超时(超过5分钟)没反应的问题
Sep 04 Javascript
JavaScript实现切换多张图片
Jan 27 Javascript
JS实现页面数据无限加载
Sep 13 #Javascript
jQuery实现可展开折叠的导航效果示例
Sep 12 #Javascript
jQuery简单实现列表隐藏和显示效果示例
Sep 12 #Javascript
jQuery实现弹出带遮罩层的居中浮动窗口效果
Sep 12 #Javascript
jQuery实现的无限级下拉菜单功能示例
Sep 12 #Javascript
jQuery实现的图片轮播效果完整示例
Sep 12 #Javascript
Vue组件BootPage实现简单的分页功能
Sep 12 #Javascript
You might like
PHP初学者常见问题集合 修正版(21问答)
2010/03/23 PHP
php数字运算验证码的实现代码
2015/07/30 PHP
php技巧小结【推荐】
2017/01/19 PHP
php反射学习之依赖注入示例
2019/06/14 PHP
动态加载js文件 document.createElement
2006/10/14 Javascript
JQuery 插件模板 制作jquery插件的朋友可以参考下
2010/03/17 Javascript
Ext JS 4官方文档之三 -- 类体系概述与实践
2012/12/16 Javascript
文字不间断滚动(上下左右)实例代码
2013/04/21 Javascript
JS获取几种URL地址的方法小结
2014/02/26 Javascript
jQuery实现的AJAX简单弹出层效果代码
2015/11/26 Javascript
jquery实现全选功能效果的实现代码
2016/05/05 Javascript
Bootstrap CSS布局之图像
2016/12/17 Javascript
JavaScript编程设计模式之构造器模式实例分析
2017/10/25 Javascript
js前端如何写一个精确的倒计时代码
2019/10/25 Javascript
vue 使用async写数字动态加载效果案例
2020/07/18 Javascript
解决vue-pdf查看pdf文件及打印乱码的问题
2020/11/04 Javascript
win7 下搭建sublime的python开发环境的配置方法
2014/06/18 Python
简单的Python抓taobao图片爬虫
2014/10/26 Python
Python使用Paramiko模块编写脚本进行远程服务器操作
2016/05/05 Python
深入解答关于Python的11道基本面试题
2017/04/01 Python
python实现决策树
2017/12/21 Python
python使用itchat实现手机控制电脑
2018/02/22 Python
使用Django和Python创建Json response的方法
2018/03/26 Python
Python不同目录间进行模块调用的实现方法
2019/01/29 Python
Pytorch 实现sobel算子的卷积操作详解
2020/01/10 Python
解决Keras TensorFlow 混编中 trainable=False设置无效问题
2020/06/28 Python
Python远程linux执行命令实现
2020/11/11 Python
Django数据模型中on_delete使用详解
2020/11/30 Python
Html5上传图片 移动端、PC端通用代码
2016/06/08 HTML / CSS
Html5写一个简单的俄罗斯方块小游戏
2019/12/03 HTML / CSS
美国亚洲时尚和美容产品的一站式网上商店:Stylevana
2019/09/05 全球购物
护理专业毕业生推荐信
2013/10/31 职场文书
纪检干部先进事迹材料
2014/08/23 职场文书
总经理聘用协议书
2015/09/21 职场文书
PyQt5 显示超清高分辨率图片的方法
2021/04/11 Python
Python 图片添加美颜效果
2022/04/28 Python