mmasonry.pkgd.js:62在初始化之前无法调用砌体上的方法;尝试拨打重新加载'

时间:2016-07-27 17:55:43

标签: javascript jquery jquery-masonry masonry imagesloaded

问题

我应该如何修改我的脚本以初始化Masonry,或重新排列我的脚本的顺序。

背景

我在我创建的其他网站上遇到了类似的问题,但目前正在我正在构建的Tumblr主题上 http://divedemo.tumblr.com/

我正在测试主题。错误的结果是图像堆叠得太紧密。我之前的研究表明,这是由于盒子没有设定高度。但到目前为止我找到的解决方案并未考虑响应式网站。

我进入控制台看看发生了什么

mmasonry.pkgd.js:62 cannot call methods on masonry prior to initialization; attempted to call 'reload'

错误(屏幕截图)

enter image description here

的Javascript

    <script src="https://cdnjs.cloudflare.com/ajax/libs/masonry/3.3.2/masonry.pkgd.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.imagesloaded/4.1.0/imagesloaded.pkgd.min.js"></script>
    <script>
        $(document).ready(function() {

            // Initialize Masonry
            $('#content').masonry({
                columnWidth: 320,
                itemSelector: '.item',
                isFitWidth: true,
                isAnimated: !Modernizr.csstransitions
            }).imagesLoaded(function() {
                $(this).masonry('reload');
            });

        });
    </script>

1 个答案:

答案 0 :(得分:1)

试试这个,

$(document).ready(function() {
    $('#content').imagesLoaded(function() {
        $('#content').masonry({
            columnWidth: 320,
            itemSelector: '.item',
            isFitWidth: true
        })
    });
});

http://masonry.desandro.com/faq.html#error-cannot-call-methods-on-masonry-prior-to-initialization-attempted-to-call-___