bootstrap瀑布流代码
<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 += ' (' + 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瀑布流代码的更多相关文章
- iOS开发:代码通用性以及其规范 第一篇(附带,自定义UITextView\进度条\双表显示\瀑布流 代码设计思路)
在iOS团队开发中,我见过一些人的代码,也修改过他们的代码.有的人的代码写的非常之规范.通用,几乎不用交流,就可以知道如何修改以及在它基础上扩展延生.有的人的代码写的很垃圾,一眼看过去,简直会怀疑自己 ...
- Jquery简单瀑布流代码示例
最近很多网站都采用瀑布流风格设计,感觉挺有个性的,比较合适做图片类型的网站,没事仿开心网做一个瀑布流示例. 需要用到Jquery,jquery.masonry.min.js <!DOCTYPE ...
- jquery实现简单瀑布流代码
测试环境:ie8 ff13.0.1 chrome22 可以将分页获取的内容依次填入四个div中,瀑布流的分页可以以多页(比如5页)为单位二次分页,这样可以减少后台算法的复杂度 <!DOCTYP ...
- ios图片瀑布流代码
ios瀑布流,实现简单的瀑布流视图布局,可以显示网络图片,下拉刷新,上拉加载更多. 下载:http://www.huiyi8.com/sc/9087.html
- JavaScript瀑布流代码
function osCode(){ var boxWidth = parseInt($(".item").css('width')), marginTop = parseInt( ...
- jq瀑布流代码
<style> #zh{ position:fixed; width:100%; height:100%; background:url(images/bgblack.png); top: ...
- js 实现图片瀑布流效果,可更改配置参数 带完整版解析代码[waterFall.js]
前言: 本人纯小白一个,有很多地方理解的没有各位大牛那么透彻,如有错误,请各位大牛指出斧正!小弟感激不尽. 本篇文章为您分析一下原生JS实现图片瀑布流效果 页面需求 1 ...
- 网友微笑分享原创Jquery实现瀑布流特效
首先非常感谢网友微笑的无私分享,此Jquery特效是一款非常流行和实用的瀑布流布局,核心代码只有几十行,是我见过代码量最少的瀑布流布局,非常适合网友们学习哦,希望大家好好看一下这个Jquery特效的原 ...
- [Stephen]页面实现瀑布流源码
项目中使用到的瀑布流代码 @using tZ.Pms.Biz @using tZ.Mvc.Base @model IPageInfo @{ ViewBag.Title = Model.WebTitle ...
随机推荐
- 图论(二分图最大权独立点集):COGS 2051. 王者之剑
2051. 王者之剑 ★★★☆ 输入文件:Excalibur.in 输出文件:Excalibur.out 简单对比 时间限制:1 s 内存限制:256 MB [题目描述] 这是在阿尔托 ...
- poj 2187 凸包加旋转卡壳算法
题目链接:http://poj.org/problem?id=2187 旋转卡壳算法:http://www.cppblog.com/staryjy/archive/2009/11/19/101412. ...
- C#与java中的集合区别
集合一般的操作 插入: add 删除: remove 查找: contains,remove java中的集合 注意哪些是接口,哪些是实现类 使用集合的时候 1. ...
- 在eclipse下远程调试hadoop2.0
在<在eclipse下编译hadoop2.0源码>一文中,我详细介绍了如何在eclipse环境和命令行环境下编译hadoop2.0源代码,并简单介绍了如何构建hadoop环境,这篇文章将着 ...
- PKU 1511 Invitation Cards (SPFA+邻接表)
题目链接:点击打开链接 题目需要求从原点到所有点的最短距离之和和所有点到原点的最短距离之和,在求所有点到原点最短距离的时候用到了一个技巧:即把图反向,求原点到所有其他点的最短距离,这样用一次SPFA就 ...
- VS 制作安装包小窥
难得忙里偷闲,看到有关VS制作安装包,按下文小试一把,还行,比不上Installshield. 首先在打开 VS2010 > 文件 >新建项目 创建一个安装项目 XXX 在“目 ...
- Qt 学习之路:视图选择 (QItemSelectionModel)
选择是视图中常用的一个操作.在列表.树或者表格中,通过鼠标点击可以选中某一项,被选中项会变成高亮或者反色.在 Qt 中,选择也是使用了一种模型.在 model/view 架构中,这种选择模型提供了一种 ...
- NSPredicate查询日期的问题
查询日期的时候日期可以根据参数传进去,但不能在字符串中传参后在作为查询条件 简单比较以下两段代码 NSDate* date1=[NSDate date]; NSDate* date2=date1; r ...
- Http API设计
Heroku团队根据heroku platform api和他们自己内部系统的实践经验总结了一些http api设计的准则,发布到了github上. 地址:https://github.com/int ...
- Java基础知识强化之IO流笔记19:FileOutputStream的三个write方法
1. FileOutputStream的三个write方法: void write(byte[] buffer) Writes the entire contents of th ...