利用Jquery.masonry插件兑现的瀑布流特效
利用Jquery.masonry插件实现的瀑布流特效
转载:http://www.jq-school.com/Detail.aspx?id=62
此Jquery特效是用了jquery.masonry.min.js插件实现的,为了让网友们方便学习和使用,把代码写成简单化和实现了瀑布流布局+滚动无限加载数据,为了网友更好的配合后台程序调用动态数据,还写了一个获取动态数据的方法。
主要功能代码如下:
转载:http://www.jq-school.com/Detail.aspx?id=62
此Jquery特效是用了jquery.masonry.min.js插件实现的,为了让网友们方便学习和使用,把代码写成简单化和实现了瀑布流布局+滚动无限加载数据,为了网友更好的配合后台程序调用动态数据,还写了一个获取动态数据的方法。
主要功能代码如下:
<script type="text/javascript"> var flag = true; $(function(){ var $container = $('#listing'); $container.masonry({ singleMode: true, animate: true, itemSelector: '.post' }); //滚动条滚动到离底部距离50的时候触发 $(window).scroll(function(){ // 当滚动到最底部以上100像素时, 加载新内容 if ($(document).height() - $(this).scrollTop() - $(this).height()<50){ if (flag){ var $boxes = $(getList()); $container.append($boxes).masonry('appended',$boxes); } } }); }); //测试获取列表 function getList() { var boxes = [],count = parseInt(Math.random()*10); for (var i=0; i < count; i++ ) { boxes.push('<div class="post"><a href="#"><img src="images/'+(i+1)+'.jpg" width="280" alt="" /></a><a href="#" target="_blank">图片'+(i+1)+'</a></div>'); } //把数组转成字符串 return boxes.join(""); }; </script>