jquery实现瀑布流效果
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>nav-head</title>
- <style>
- *{
- margin:0;
- padding:0;
- }
- .clearfix:after{visibility:hidden;clear:both;display:block;content:".";height:0}
- .pull-list{
- padding:5px;
- font-size:0;
- position:relative;
- }
- .pull-list .pull-box{
- display:inline-block;
- float:left;
- }
- .pboder{
- border:1px solid #ccc;
- padding:5px;
- margin:5px;
- font-size:12px;
- }
- img{
- width:140px;
- }
- </style>
- <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no">
- </head>
- <body>
- <div class="pull-list clearfix">
- <div class="pull-box">
- <div class="pboder">
- <img src="data:image/1.jpg">
- </div>
- </div>
- <div class="pull-box">
- <div class="pboder">
- <img src="data:image/2.jpg">
- </div>
- </div>
- <div class="pull-box">
- <div class="pboder">
- <img src="data:image/3.jpg">
- </div>
- </div>
- <div class="pull-box">
- <div class="pboder">
- <img src="data:image/4.jpg">
- </div>
- </div>
- <div class="pull-box">
- <div class="pboder">
- <img src="data:image/4.jpg">
- </div>
- </div>
- <div class="pull-box">
- <div class="pboder">
- <img src="data:image/5.jpg">
- </div>
- </div>
- <div class="pull-box">
- <div class="pboder">
- <img src="data:image/6.jpg">
- </div>
- </div>
- <div class="pull-box">
- <div class="pboder">
- <img src="data:image/7.jpg">
- </div>
- </div>
- <div class="pull-box">
- <div class="pboder">
- <img src="data:image/8.jpg">
- </div>
- </div>
- <div class="pull-box">
- <div class="pboder">
- <img src="data:image/9.jpg">
- </div>
- </div>
- <div class="pull-box">
- <div class="pboder">
- <img src="data:image/10.jpg">
- </div>
- </div>
- </div>
- <script src="jquery.min.js"></script>
- <script>
- $(window).on("load",function(){
- function getSlist(){
- var docW = $(window).width(),
- boxW = $('.pull-box').eq(0).outerWidth(),
- boxL = Math.floor(docW/boxW);
- $(".pull-list").css({
- "margin":"0 auto",
- "width":boxW*boxL
- })
- var arrBox = [];
- $('.pull-box').each(function(key,val){
- var boxH = $(val).outerHeight();
- if(key<boxL){
- arrBox[key] = boxH;
- }else{
- var minH = Math.min.apply(null,arrBox);
- var minIndex =$.inArray(minH,arrBox);
- $(val).css({
- "position":"absolute",
- "left":(minIndex*boxW+5)+"px",
- "top":(minH+5)+"px"
- })
- arrBox[minIndex] += $('.pull-box').eq(key).outerHeight();
- }
- })
- }
- getSlist();
- function checkScroll(){
- $(window).scroll(function(){
- if($(document).height() < $(window).height() + parseInt($(window).scrollTop(),10) + 50){
- $.ajax({
- url:"text.json",
- method:"GET",
- success:function(data){
- var res = data.list;
- var str = "";
- for(var i=0; i<res.length; i++){
- str ='<div class="pull-box">'+
- ' <div class="pboder">'+
- ' <img src="data:image/'+res[i]+'">'+
- ' </div>'+
- ' </div>';
- $(".pull-list").append(str);
- }
- getSlist();
- },
- error:function(data){
- console.log(data)
- }
- })
- }
- });
- }
- checkScroll();
- $(window).resize(function() {
- checkScroll();
- })
- })
- </script>
- </body>
- </html>
- text.json{
- "list":["1.jpg","2.jpg","3.jpg","4.jpg","5.jpg","6.jpg","7.jpg","8.jpg","9.jpg","10.jpg"]
- }
jquery实现瀑布流效果的更多相关文章
- 用jQuery实现瀑布流效果学习笔记
jQuery一直没系统的学,只知道是js库,封装了好多js函数,方便了开发.以前做过一个原生的图片网站瀑布流效果,超级麻烦,这次用了jQuery方法,瞬间代码浓缩了,只有56行js代码.神奇的让我来把 ...
- 【前端】用jQuery实现瀑布流效果
jQuery实现瀑布流效果 何为瀑布流: 瀑布流,又称瀑布流式布局.是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数据块并附加至当前尾部.最早 ...
- jQuery淡入淡出瀑布流效果
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- jQuery实现瀑布流
瀑布流布局多用于加载图片,或者图片配上文字.视觉表现为参差不齐的多栏布局.随着页面滚动条向下滚动,还会不断加载数据块并附加至当前尾部.本文就来利用jQuery实现一个图片瀑布流的效果. 1.布局. 首 ...
- Jquery简单瀑布流代码示例
最近很多网站都采用瀑布流风格设计,感觉挺有个性的,比较合适做图片类型的网站,没事仿开心网做一个瀑布流示例. 需要用到Jquery,jquery.masonry.min.js <!DOCTYPE ...
- jquery版瀑布流
一个月前用jquery实现了瀑布流效果,看着当时的代码有点难过……今天抽时间稍微修改了一下.额,现在看起来不是那么难受了,就来和大家分享一下.废话不多说,开始正题~ 一.演示效果 二.html代码 & ...
- RecylerView完美实现瀑布流效果
RecylerView包含三种布局管理器,分别是LinearLayoutManager,GridLayoutManager,StaggeredGridLayoutManager,对应实现单行列表,多行 ...
- 使用JS实现图片展示瀑布流效果
不知大家有没有发现,一般的图片展示网站都会使用瀑布流效果,所谓的瀑布流 就是网站内的图片不会一下子全缓存出来,而是等你滚动到一定的距离的时候, 下面的图片才会继续缓存,并且图片也是随机出现的,只是宽度 ...
- WPF下制作的简单瀑布流效果
最近又在搞点小东西,美化界面的时候发现瀑布流效果比较不错.顺便就搬到了WPF,下面是界面 我对WEB前端不熟,JS和CSS怎么实现的,我没去研究过,这里就说下WPF的实现思路,相当简单. 1.最重要的 ...
随机推荐
- SSD-tensorflow-3 重新训练模型(vgg16)
一.修改pascalvoc_2007.py 生成自己的tfrecord文件后,修改训练数据shape——打开datasets文件夹中的pascalvoc_2007.py文件,根据自己训练数据修改:NU ...
- php八大设计模式之简介篇
设计模式的在面向对象中的重要性? 更深入的理解面向对象的思想,有利于开发出扩展性强的程序.在 PHP 面向对象中有一个 "开闭原则" :"软件实体应当对扩展开 ...
- UVA-11134 Fabled Rooks 贪心问题(区间贪心)
题目链接:https://cn.vjudge.net/problem/UVA-11134 题意 在 n*n 的棋盘上,放上 n 个车(ju).使得这 n 个车互相不攻击,即任意两个车不在同一行.同一列 ...
- [NOIP2015提高组]子串
题目:洛谷P2679.Vijos P1982.codevs4560.UOJ#149. 题目大意:有长度为n的A串和长度为m的B串.现在要从A串中取出k个互不重叠的子串,使它们按顺序相连后得到B串.问有 ...
- 去掉vs2010字符串下红色波浪线
由于在vs集成了qt库,无法提升代码. 所以下载了visual assist,然后新的问题出现了,凡是在vs中输入的字符串,下面都有红色的波浪线,而且没有错误,只是看着不舒服. 解决方法: 在VAss ...
- 用typename和template消除歧义
- 【LeetCode-面试算法经典-Java实现】【057-Insert Interval(插入区间)】
[057-Insert Interval(插入区间)] [LeetCode-面试算法经典-Java实现][全部题目文件夹索引] 原题 Given a set of non-overlapping in ...
- Qt 5.3 下OpenCV 2.4.11 开发(0)图像处理基本概念
1.普通情况下的RGB彩色图像:它的每一个像素点都是由三个通道组成,即红色(R).绿色(G)和蓝色(B).8位三通道彩色图像就是每一个像素中每一个通道的取值范围都是 0~255(即二进制下的8位数), ...
- Linux异常关机后,Mysql启动出错ERROR 2002 (HY000)
Linux异常关机后,Mysql启动或訪问时,出错: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/ ...
- JVM调优系列:(四)GC垃圾回收
跟踪收集算法: 复制(copying): 将堆内分成两个同样空间,从根(ThreadLocal的对象.静态对象)開始訪问每个关联的活跃对象,将空间A的活跃对象所有拷贝到空间B,然后一次性回收整个空间A ...