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 ...
随机推荐
- [Locked] Number of Connected Components in an Undirected Graph
Number of Connected Components in an Undirected Graph Given n nodes labeled from 0 to n - 1 and a li ...
- ssh非交互式密码输入
ssh登陆不能在命令行中指定密码.sshpass的出现,解决了这一问题.sshpass用于非交互SSH的密码验证,一般用在sh脚本中,无须再次输入密码. 它允许你用 -p 参数指定明文密码,然后直接登 ...
- 使用MyEclipse实现简单的Servlet程序
1. 创建一个继承于GenericServlet的类 3. 重写Server方法 package cn.school; import java.io.IOException; import javax ...
- SCOI2013 多项式的运算
---恢复内容开始--- 又是一道裸数据结构题. 之前受序列操作的蛋疼写法影响,只用一个tag,不知道怎么记,之后看了下别人的,终于领悟要用两个tag,一个add,一个mul,维护相当简单,想清楚就行 ...
- Fiddler 抓包 教程
Fiddler的基本介绍 Fiddler的官方网站: www.fiddler2.com Fiddler官方网站提供了大量的帮助文档和视频教程, 这是学习Fiddler的最好资料. Fiddler是最 ...
- border、margin、padding属性的区别
可以先看下这个视频教程:http://my.tv.sohu.com/us/97014746/64226777.shtml 本文参考:http://www.cnblogs.com/chinhr/arch ...
- floyd+动态规划 hdu-4571-Travel in time
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4571 题目大意: 有n个景点,每个点都有个游玩时间ci,游玩后得到的满意度si.给一个起点s和终点e ...
- STL——临时对象的产生与运用
所谓临时对象,就是一种无名对象.它的出现如果不在程序员的预期之下(例如任何pass by value操作都会引发copy操作,于是形成一个临时对象),往往造成效率上的负担.但有时候刻意制造一些临时对象 ...
- Android(java)学习笔记243:多媒体之视频播放器
1.这里我们还是利用案例演示视频播放器的使用: (1)首先,我们看看布局文件activity_main.xml,如下: <RelativeLayout xmlns:android="h ...
- POJ 2891 扩展欧几里德
这个题乍一看跟剩余定理似的,但是它不满足两两互素的条件,所以不能用剩余定理,也是给了一组同余方程,找出一个X满足这些方程,如果找不到的话就输出-1 因为它不满足互素的条件,所以两个两个的合并,最后合成 ...