2

我正在尝试在我的博客文章中使用 David DeSandro 的 Masonry,但我遇到了一个令人讨厌的问题,即容器重叠。一旦我重新调整浏览器窗口的大小,一切正常:

<!--The code I placed in my template head section:-->
<script src='http://desandro.github.io/imagesloaded/imagesloaded.pkgd.min.js'/>
<script src='http://masonry.desandro.com/masonry.pkgd.min.js'/>
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js' type='text/javascript'/>
<b:if cond='data:blog.pageType != &quot;index&quot;'>
<script>
$(document).ready(function(){
    var $container = $(&#39;AJcontainer&#39;);
        $container.imagesLoaded( function() {
        $container.masonry({
            itemSelector: &#39;AJpost&#39;,
            });
    });
    });
</script>
</b:if>



<!--The code in my posts:-->
<div class="js-masonry" id="AJpost">
<div class="AJcontainer"><a href="*.jpg">
<img src="*.jpg" />
<div class="AJsumm">(...)</div></a>
</div>

在过去的几天里,我一直在寻找解决方案但没有成功: imagesLoaded似乎不起作用,(window).load而不是(document).ready也不起作用

这是正在进行的工作网站:http: //infinitywashere.blogspot.co.uk/2014/04/sketches-again.html

任何帮助将不胜感激!

4

1 回答 1

3

可能是 JQuery 语法有问题,试试这个:

$(window).load(function(){
    var $container = $('#AJpost');
    $container.imagesLoaded( function() {
        $container.masonry({
            itemSelector: '.AJcontainer'
        });
    });
});

试试没有 imagesLoaded:

$(window).load(function() {  
    var $container = $('#AJpost');
    $container.masonry({
        itemSelector: '.AJcontainer'
    });
}); 
于 2014-04-15T17:25:27.577 回答