我的目标=通过ajax检索项目列表,在页面加载时显示n张幻灯片,然后在每次单击“加载项目”时附加n个项目,直到显示所有项目,此时显示“不再剩下”等内容。
我有 ajax 调用和附加项目独立工作,但需要帮助才能使它们一起工作。
这是我的 ajax 调用,我将它放在一个名为 populateBlocks 的函数中:
function populateBlocks(position,page_size) {
$.ajax({
type: "GET",
url: "/portfolio.xml",
dataType: "xml",
success: function(xml) {
var title, url, block_count;
block_count = $(xml).find('block').length;
$(xml).find('block').slice(position,position+page_size).each(function(){
title = $(this).find('title').text();
url = $(this).find('url').text();
$('div.section').append('<div class="item"><a href="' + url + '"><img src="' + url + '" alt="" /><span class="title"><span class="text">' + title + '</span></span></a></div>');
});
$('.section').masonry('reload');
}
});
}
以下是文档就绪时加载的内容,包括“加载项目”单击的处理程序:
$(document).ready(function() {
var position;
var page_size;
populateBlocks(0,9);
$('#append2').click(function(position){
$boxes = populateBlocks(9,9);
$('#container').append( $boxes ).masonry( 'appended', $boxes );
});
});
我知道代码可能有各种各样的错误。我正在尝试使用函数参数,并在单击后增加 position 和 page_size 变量,但没有任何乐趣。