今天给一个页面写瀑布流砖块效果的时候使用了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像素
});
});
})
红色代码为改动部分, 完美解决!
查看原内容