<extend name="Base/common" />
<block name="search-cate"> <include file="Public/jlbnav" /></BLOCK>
<block name="content">
<div class="container mt20">
<div class="container-fluid" id="masonry"> </div> <div id="masonry_ghost" class="hide">
<volist name="list" id="vo">
<div class="thumbnail">
<div class="imgs">
<input type="hidden" value="/{$vo.thumb}">
</div>
<div class="caption">
<div class="title">{$i}简单OA管理系统</div>
<div class="content"> </div>
<div class="author">by <a target="_blank" href="">小小生</a></div>
</div>
</div>
</volist> </div>
</div>
加bootstrap jquery js
<script src="http://cdnjs.cloudflare.com/ajax/libs/masonry/3.2.2/masonry.pkgd.js"></script>
<script src="http://fineui.com/lib/imagesloaded.pkgd.min.js"></script>
<script src="http://fineui.com/lib/lightbox-2.6.min.js"></script>
<script>
$(function() { var ghostNode = $('#masonry_ghost').find('.thumbnail'), i, ghostIndexArray = []; //定义变量
var ghostCount = ghostNode.length; for(i=0; i<ghostCount; i++){
ghostIndexArray[i] = i;
}
ghostIndexArray.sort(function(a, b) {
if(Math.random() > 0.5) {
return a - b;
} else {
return b - a;
}
});
//上面js是页面打开时自动加载运算,随机排列。
var currentIndex = 0;
var masNode = $('#masonry');//要加载的div主框架
var imagesLoading = false;//标记 function getNewItems() {
var newItemContainer = $('<div/>');
for(var i=0; i<12; i++) {
if(currentIndex < ghostCount) {
newItemContainer.append(ghostNode.get(ghostIndexArray[currentIndex]));
currentIndex++;
}
}
return newItemContainer.find('.thumbnail');
} function processNewItems(items) {
items.each(function() {
var $this = $(this);
var imgsNode = $this.find('.imgs');
var title = $this.find('.title').text();
var author = $this.find('.author').text();
title += '&nbsp;&nbsp;(' + author + ')';
var lightboxName = 'lightbox_'; // + imgNames[0]; var imgNames = imgsNode.find('input[type=hidden]').val().split(',');
$.each(imgNames, function(index, item) {
imgsNode.append('<a href="'+ item +'" data-lightbox="'+ lightboxName +'" title="'+ title +'"><img src="'+ item +'" /></a>');
});
});
} function initMasonry() {
var items = getNewItems().css('opacity', 0);
processNewItems(items);
masNode.append(items); imagesLoading = true;
items.imagesLoaded(function(){
imagesLoading = false;
items.css('opacity', 1);
masNode.masonry({
itemSelector: '.thumbnail',
isFitWidth: true
});
});
} function appendToMasonry() {
var items = getNewItems().css('opacity', 0); processNewItems(items);
masNode.append(items); imagesLoading = true;
items.imagesLoaded(function(){
imagesLoading = false;
items.css('opacity', 1);
masNode.masonry('appended', items);
});
} function ajaxItem(){
var items = $('#masonry_ghost').find('.thumbnail').css('opacity', 0);

processNewItems(items);
masNode.append(items);
imagesLoading = true; items.imagesLoaded(function(){ items.css('opacity', 1);
masNode.masonry('appended', items);
imagesLoading = false;
});
} initMasonry();
var page =2; //分页
var ttt=1;
$(window).scroll(function() {
if(arguments.callee.timer) clearTimeout(arguments.callee.timer);//解决FIRFOX下滚动多次
if($(document).height() - $(window).height() - $(document).scrollTop() < 30) {
arguments.callee.timer = setTimeout(getdiv,400);
} }); function getdiv(){
if(!imagesLoading) {
$.ajax({
url: '{:U("Tulebu/getsharedata")}',
type: 'POST',
dataType: 'text',
data: {'page': page},
async:false,
})
.done(function(data) {
if(data.length<2){
imagesLoading = true;
return;
}
$('#masonry_ghost').append(data);
page+=1;
ajaxItem();
})
.fail(function() {
console.log("error");
})
.always(function() {
console.log("complete");
});
}
} function randomColor() {
var rand = Math.floor(Math.random() * 0xFFFFFF).toString(16);
for (; rand.length < 6;) {
rand = '0' + rand;
}
return '#' + rand;
} // var page=0;
// function getdata(){
// $.$.post('{:U('Julebu/')}', param1: 'value1', function(data, textStatus, xhr) {
// /*optional stuff to do after success */
// });
// } });
</script>
</block>

bootstrap瀑布流代码的更多相关文章

  1. iOS开发:代码通用性以及其规范 第一篇(附带,自定义UITextView\进度条\双表显示\瀑布流 代码设计思路)

    在iOS团队开发中,我见过一些人的代码,也修改过他们的代码.有的人的代码写的非常之规范.通用,几乎不用交流,就可以知道如何修改以及在它基础上扩展延生.有的人的代码写的很垃圾,一眼看过去,简直会怀疑自己 ...

  2. Jquery简单瀑布流代码示例

    最近很多网站都采用瀑布流风格设计,感觉挺有个性的,比较合适做图片类型的网站,没事仿开心网做一个瀑布流示例. 需要用到Jquery,jquery.masonry.min.js <!DOCTYPE ...

  3. jquery实现简单瀑布流代码

    测试环境:ie8 ff13.0.1  chrome22 可以将分页获取的内容依次填入四个div中,瀑布流的分页可以以多页(比如5页)为单位二次分页,这样可以减少后台算法的复杂度 <!DOCTYP ...

  4. ios图片瀑布流代码

    ios瀑布流,实现简单的瀑布流视图布局,可以显示网络图片,下拉刷新,上拉加载更多. 下载:http://www.huiyi8.com/sc/9087.html

  5. JavaScript瀑布流代码

    function osCode(){ var boxWidth = parseInt($(".item").css('width')), marginTop = parseInt( ...

  6. jq瀑布流代码

    <style> #zh{ position:fixed; width:100%; height:100%; background:url(images/bgblack.png); top: ...

  7. js 实现图片瀑布流效果,可更改配置参数 带完整版解析代码[waterFall.js]

    前言:         本人纯小白一个,有很多地方理解的没有各位大牛那么透彻,如有错误,请各位大牛指出斧正!小弟感激不尽.         本篇文章为您分析一下原生JS实现图片瀑布流效果 页面需求 1 ...

  8. 网友微笑分享原创Jquery实现瀑布流特效

    首先非常感谢网友微笑的无私分享,此Jquery特效是一款非常流行和实用的瀑布流布局,核心代码只有几十行,是我见过代码量最少的瀑布流布局,非常适合网友们学习哦,希望大家好好看一下这个Jquery特效的原 ...

  9. [Stephen]页面实现瀑布流源码

    项目中使用到的瀑布流代码 @using tZ.Pms.Biz @using tZ.Mvc.Base @model IPageInfo @{ ViewBag.Title = Model.WebTitle ...

随机推荐

  1. Android中ListView分页加载数据

    public class MainActivity extends Activity { private ListView listView=null; //listview的数据填充器 privat ...

  2. 转:VS2010解决方案转换到VS2008

    原文链接地址:http://www.codeproject.com/Tips/80953/Converting-VS2010-Solution-to-VS2008 如果你使用VS2010的任何版本写代 ...

  3. RabbitMQ挂掉问题处理

    开发环境中的rabbitmq总是会挂掉,rabbitmq的执行都是ssh远程登录执行命令: rabbitmq-server & 认为加了&,进程会在后台执行不会受到终端的影响.所以不知 ...

  4. HTML5 骨架

    html: <!DOCTYPE html> <html lang="zh-CN"> <head> <title>HTML5 骨架&l ...

  5. iOS开发之监测网络状态

    一.说明 在网络应用中,需要对用户设备的网络状态进行实时监控,有两个目的: (1)让用户了解自己的网络状态,防止一些误会(比如怪应用无能) (2)根据用户的网络状态进行智能处理,节省用户流量,提高用户 ...

  6. jquery ajaxform上传文件返回不提示信息的问题

    在使用jquery的ajaxform插件进行ajax提交表单并且上传文件的时候,返回类型datatype :json但是后台通过写出一个json对象后,在执行完以后没有进入success函数,而是直接 ...

  7. 【动态页面】(二)Java反射

    Java的反射机制是Java语言非常重要的一个特性.先从Sun官网上看一下官网是怎样定义反射机制的. 大致翻译一下,翻译的可能不是非常准确. 反射(Reflection)是Java程序设计语言的一个特 ...

  8. Flash上传组件之SWFUpload文件上传

    一.什么是SWFUpload? SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而 ...

  9. golang中channel的超时处理

    并发中超时处理是必不可少的,golang没有提供直接的超时处理机制,但可以利用select机制来解决超时问题. func timeoutFunc() { //首先,实现并执行一个匿名的超时等待函数 t ...

  10. 《Android开发艺术探索》读书笔记 (11) 第11章 Android的线程和线程池

    第11章 Android的线程和线程池 11.1 主线程和子线程 (1)在Java中默认情况下一个进程只有一个线程,也就是主线程,其他线程都是子线程,也叫工作线程.Android中的主线程主要处理和界 ...