大家好,我这里有一个小问题,我想使用此代码加载更多
$(document).ready(function(){
var page = 1;
var pages = $("#pages").val();
$("#content").load("resources/more.php");
$("#loadmore").bind("click", function(){
var next = page+=1;
$.get("resources/more.php?page="+next, function(data){
var el = jQuery(data);
if(next==pages){
$("#loadmore").remove();
}
$("#content").append(el).masonry( 'appended', el, true );
//$("#content").append(el).masonry( 'reload' );
});
});
});
加载更多工作得很好,但 Masonry 根本不工作。感谢您的帮助。
最佳答案
该问题是由于我帮助发现的错误造成的!事实证明,$.get() 返回的 HTML 带有一些 Masonry 不喜欢的底层 DOM 结构。
要修复它,请更改此:
var el = jQuery(data);
对此:
var el = jQuery(data).filter('div');
您可以在这里阅读更多相关信息: https://github.com/desandro/masonry/issues/374
关于php - Ajax 和砌体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16131231/