Я замечаю, что моя страница кладки создает перекрытие и неравный интервал. Это непротиворечиво и, кажется, иногда случается, в то время как в другое время это работает нормально. В каждом случае, если я немного изменю размер моего окна, функция mason() запускает и исправляет его. Первоначально я думал, что это проблема с необходимостью загрузки изображений (около 30 за один раз загружаются), но я уже реализовал imagesLoaded и не вижу разницы. Может ли кто-нибудь указать на мою ошибку?Каменная кладка
<script>
function mason() {
var $container = $('#dealcontainer').masonry({
itemSelector: '.outerdeal',
columnWidth: '.outerdeal'
});
$container.imagesLoaded(function(){
$container.masonry();
});
}
function colorize()
{
$('.dealfilterli').click(function (event) {
if (event.target.type !== 'checkbox') {
$(':checkbox', this).trigger('click');
}
$("input[type='checkbox']").change(function (e) {
if ($(this).is(":checked")) {
$(this).closest('li').addClass("colorize");
} else {
$(this).closest('li').removeClass("colorize");
}
});
});
}
function InitInfiniteScroll(){
$('#dealcontainer').infinitescroll({
navSelector : "div.pagination",
nextSelector : "div.pagination li a",
itemSelector : "#deals div.outerdeal",
loading:{
finishedMsg: '',
img: 'http://www.example.com/img/icons/site/spinner.gif',
msgText: '',
speed: 'fast',
},
},function(newElements) {
var $newElems = $(newElements);
$('#dealcontainer').masonry('appended', $newElems);
mason();
});
}
$(document).ready(function() {
InitInfiniteScroll();
colorize();
});
$(window).resize(function() {
InitInfiniteScroll();
mason();
}).resize();
</script>