jQuery瀑布流效果
$(window).on('load',function(){
waterfall();
var dataInt={"data":[{"src":'1.jpg'},{"src":'2.jpg'},{"src":'3.jpg'},{"src":'4.jpg'},{"src":'5.jpg'},{"src":'6.jpg'}]};
$(window).on('scroll',function(){
if(checkScrollSlider){
$.each(dataInt.data,function(key,value){
var oBox=$('<div>').addClass('box').appendTo($('#main'));
var oPic=$('<div>').addClass('pic').appendTo($(oBox));
var oImg=$('<img>').attr('src','images/'+$(value).attr('src')).appendTo($(oPic));
})
waterfall();
}
})
});
function waterfall(){
var $boxs=$("#main>div");
var w=$boxs.eq(0).outerWidth();
var cols=Math.floor($(window).width()/w);
$("#main").width(w*cols).css('margin','0 auto')
var hArr=[];
$boxs.each(function(index,value){
var h=$boxs.eq(index).outerHeight();
if(index<cols){
hArr[index]=h;
}else{
var minH=Math.min.apply(null,hArr);
var minHIndex=$.inArray(minH,hArr);
$(value).css({
'position':'absolute',
'top':minH+'px',
'left':minHIndex*w+'px'
})
hArr[minHIndex]+=$boxs.eq(index).outerHeight();
}
})
}
function checkScrollSlider(){
var $lastBox=$('#main>div').last();
var lastBoxDis=$lastBox.offset().top+Math.floor($lastBox.outerHeight()/2);
var scrollTop=$(window).scrollTop();
var documentH=$(window).height();
return(lastBoxDis<scrollTop+documentH)?true:false;
}
转载于:https://www.geek-share.com/detail/2652900856.html
- 图片 jquery图片自滚动瀑布流效果
- jquery实现瀑布流效果
- 基于jQuery的瀑布流效果
- 详解照片瀑布流效果(js,jquery分别实现与知识点总结)
- 15个非常棒的jQuery无限滚动插件【瀑布流效果】
- jquery瀑布流效果demo
- 带有分散效果的瀑布流(jQuery实现)
- js框架jquery瀑布流图片墙效果代码下载,点击相册图片展示大图
- 利用jquery实现瀑布流效果
- jquery实现瀑布流效果+下拉加载新数据
- jquery实现瀑布流效果 jquery下拉加载新数据
- jQuery向下滚动即时加载内容实现的瀑布流效果
- 基于jQuery的瀑布流效果
- 15个非常棒的jQuery无限滚动插件【瀑布流效果】
- 前端代码回放:jQuery实现的dribbble最受欢迎作品集瀑布流效果
- 30个创意出色的非常实用的jquery框架插件-(视觉大背景,瀑布流效果)
- Jquery瀑布流效果(下篇)
- 基于jQuery的瀑布流效果
- PHP+Jquery与ajax相结合实现下拉淡出瀑布流效果【无需插件】
- jQuery向下滚动即时加载内容实现的瀑布流效果