使用瀑布流砖块masonry出现错误cannot call methods on masonry prior to initialization; attempted to call method &

分类栏目:帝国学院

发布于

今天给一个页面写瀑布流砖块效果的时候使用了masonry,调试以外出现了如下错误:

cannot call methods on masonry prior to initialization; attempted to call method 'reload'

代码如下图:

查找资料发现是需要在使用的时候,初始化一次函数!这就好办了,改后的代码为:

$(document).ready(function(){
//瀑布流代码
    var $container = $('.list');

    $(".lazy").scrollLoading({
         callback: function() {
            $container.imagesLoaded(function(){
                $container.masonry().masonry('reload');
            });
        }
    });

    $container.imagesLoaded(function(){
        $container.masonry({
            itemSelector: '.masonry',
            columnWidth: 0 //每两列之间的间隙为5像素
        });
    });
})

红色代码为改动部分, 完美解决!

查看原内容