我已经浏览了关于这个问题的各种问题,但似乎没有解决我的问题。将元素添加到砌体
当第一次加载页面,我开始的前十个图像砌筑如下:
$('img').load(function(){
var masonry = $('#gallery').masonry({
itemSelector: '.item',
});
});
接下来,当用户滚动到页面的底部,我叫一个ajax:
if ($(window).scrollTop() >= $(document).height() - $(window).height() + 5) {
request_pending = true;
$('#loading').show();
$.ajax({
url: '/timeline/getPhotosAPI',
type: 'POST',
data: { id:'<?=$id?>', offset: offset },
success: function(html){
if(html.length > 0){
var response = JSON.parse(html);
$.each(response, function(i, item){
$('#gallery').append(item);
var $html = $(item);
$('#gallery').find('.item').masonry('appended', $html, true);
});
$('#loading').hide();
offset = parseInt(offset) + 10;
request_pending = false;
}else{
alert('fail');
}
}
});
}
哪里响应是从我的PHP HTML延迟性肌肉酸痛的JSON字符串,看起来像:
array(0 => '<div class="items"><img src="xyz" /></div>");
上面的代码成功地将我的图像附加到我的#gallery
容器中,但砌体不会读取我的“.item”类,并将相应的定位附加到我新添加的项目中。
任何想法?
任何人都面临这个问题。可以将STRINGS推入同位素中进行布局。但它没有记录。从开发者自己http://codepen.io/desandro/pen/jKrmF?editors=001查看这个CodePen。以及这个http://stackoverflow.com/questions/10034213/issues-with-isotope-appending – Komsomol