0
我有一个页面使用masonry.js来平铺pinterest类型布局的div。Masonry.js使用静态HTML但不动态添加内容
CSS和脚本做工精细,如果我使用静态的HTML,但如果我用一个函数来加载内容则不适用砖石布局
这工作(当我把HTML直接进入.grid DIV)
<script type="text/javascript">
$(document).ready(function() {
var $grid = $('.grid').masonry({
// set itemSelector so .grid-sizer is not used in layout
itemSelector: '.grid-item',
// use element for option
columnWidth: '.grid-sizer',
percentPosition: true,
gutter: 10
})
// layout Masonry after each image loads
$grid.imagesLoaded().progress(function() {
$grid.masonry('layout');
});
});
</script>
然而,当我在下面添加它加载完全相同的HTML到.grid DIV功能砌筑风格不起作用:
<script type="text/javascript">
$(document).ready(function() {
var track_load = 0; //total loaded record group(s)
var loading = false; //to prevents multipal ajax loads
var total_groups = <?php echo $total_groups; ?>; //total record group(s)
var leagueid = <?php echo "1";?>;
$('.grid').load("league_news1.php", {'group_no':track_load,'leagueid':leagueid}, function() {track_load++;}); //load first group
});
</script>
有AW我应该运行这个?我试着把内容加载器先砌砖,但那不行。砌体应该检查内容是否先被加载?如果是这样如何?我应该使用document.ready以外的东西吗?
在此先感谢您的任何帮助!
谢谢回复。我明白你在说什么,但实际上这会让布局变得更糟。使用我的代码,div与它们之间的空间堆叠起来(这不是我想要的),但是实现代码会使所有div彼此之间更加恶化 - 因此只有一个实际可见(我认为这就是您的代码中的imagesLoaded()函数不能正确工作) – bertster