我正在使用用于个人图片库的 jQuery Isotope 库。我已经按照说明进行操作,甚至使用了示例代码,但是我遇到了一个问题,即当页面加载时,它会直接向下加载所有图像。几秒钟后,石匠将它们固定到位。
我也在使用 imagesLoaded 库,但我想知道是否有办法将它们加载到位,或者在加载时隐藏它们,或者什么?当他们以一条长长的直线加载时,它看起来很草率,然后几秒钟后泥瓦匠就位。
我认为 imagesLoaded 会隐藏图像,或将它们加载到位,但事实并非如此。
我的代码和几张照片来说明我的意思:
// Isotope Settings
$(function(){
var $container = $('#mason');
$container.imagesLoaded( function(){
$container.isotope({
itemSelector : '.box',
masonry : {
columnWidth: 270
}
});
});
$container.infinitescroll({
navSelector : '#page_nav', // selector for the paged navigation
nextSelector : '#page_nav a', // selector for the NEXT link (to page 2)
itemSelector : '.box', // selector for all items you'll retrieve
loading: {
finishedMsg: 'No more pages to load.',
img: 'http://i.imgur.com/qkKy8.gif'
}
},
// call Isotope as a callback
function( newElements ) {
var $newElems = $( newElements ).css({ opacity: 0 });
// ensure that images load before adding to masonry layout
$newElems.imagesLoaded(function(){
// show elems now they're ready
$container.isotope( 'appended', $newElems, true );
});
}
);
});