百度 | 神马 | 搜狗 | 技术文档 | 学习资料分享 - 记录帝国CMS及运维技术的点点滴滴
你的位置:首页 > 帝国cms技术 » 正文

使用瀑布砖砌体时出错,无法在初始化前调用砌体上的方法;试图调用方法& # 039;重装& # 039;

发布时间:2020-11-07

作品分类:瀑布流  masonry  错误  reload  方法

今天给一个页面写瀑布流砖块效果的时候使用了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像素
        });
    });
})

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

Top